我们按如下方式定义序列
给定
也算是个语法题吧。。
从定义就能看出来这是递归定义的,于是我们也写个递归,
(如果把
xxxxxxxxxx
551
2
3
4
5
6
7
8
9
10
11using namespace std;
12using namespace __gnu_pbds;
13
14mt19937 rnd(random_device{}());
15int rndd(int l, int r){return rnd() % (r - l + 1) + l;}
16bool rnddd(int x){return rndd(1, 100) <= x;}
17
18typedef unsigned int uint;
19typedef unsigned long long unll;
20typedef long long ll;
21typedef long double ld;
22
23template< typename T = int >
24inline T read(void);
25
26void PrintAns(int n){
27 if(n == 1)return printf("1 "), void();
28 PrintAns(n - 1);
29 printf("%d ", n);
30 PrintAns(n - 1);
31}
32
33int main(){
34 int N = read();
35 PrintAns(N);
36 printf("\n");
37 fprintf(stderr, "Time: %.6lf\n", (double)clock() / CLOCKS_PER_SEC);
38 return 0;
39}
40
41template < typename T >
42inline T read(void){
43 T ret(0);
44 short flag(1);
45 char c = getchar();
46 while(c != '-' && !isdigit(c))c = getchar();
47 if(c == '-')flag = -1, c = getchar();
48 while(isdigit(c)){
49 ret *= 10;
50 ret += int(c - '0');
51 c = getchar();
52 }
53 ret *= flag;
54 return ret;
55}
update-2022_10_24 初稿