数数
题目描述
小可可正在学习用手指数数。当爸爸问他“n(1<=n<=10)是多少?”,小可可的回答就是竖起n个手指头。为了让问题简单一些,爸爸告诉他正确的手指表示方式:
(1)这个数可以用一只手或两只手表示
(2)如果这个数用两只手表示,大的数会先给出。
比如爸爸问他“4是多少?”,小可可可以有3种表示方法:
(1)一只手竖起4个手指头;
(2)一只手竖起3个手指头,另一只手竖起一个手指头
(3)一只手竖起2个手指头,另一只手竖起2个手指头。
你的任务是,对于爸爸的提问,确认小可可有几种正确的回答方法。
输入
一行,1个1到10之间的数
输出
一行,为方法总数
样例输入:
4
样例输出:
3
思路
因为这道题的数据很小,所以懒得推规律了,打表就行
代码
#include <bits/stdc++.h>
using namespace std;
int n = 0;
int ans[15] = {1, 1, 2, 2, 3, 3, 3, 2, 2, 1, 1};
int main() {
freopen("count.in", "r", stdin);
freopen("count.out", "w", stdout);
scanf("%d", &n);
cout << ans[n] << endl;
}