Aiiage Camp Day6 F Wave

题意

  求长度为n的字典序最小波浪序列。

  1<=n<=100000

题解

  按照1 3 2 5 4 7 6...构造即可。

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     int n;
 7     scanf("%d", &n);
 8     if (n == 1)
 9     {
10         puts("1");
11         return 0;
12     }
13     if (n == 2)
14     {
15         puts("1 2");
16         return 0;
17     }
18     putchar('1');
19     if (n & 1)
20     {
21     for (int i = 2; i <= n; ++i)
22         if (i & 1)
23             printf(" %d", i - 1);
24         else
25             printf(" %d", i + 1);
26     putchar('
');
27     }
28     else
29     {
30     for (int i = 2; i <= n - 1; ++i)
31         if (i & 1)
32             printf(" %d", i - 1);
33         else
34             printf(" %d", i + 1);
35     printf(" %d
", n);
36     }
37     
38     return 0;
39 }
原文地址:https://www.cnblogs.com/aseer/p/8513391.html