問題
http://codeforces.com/contest/688/problem/B
回分になっていて、桁数が偶数である数を小さい順に並べるとき、n番目の数を出力せよ。
1 <= n <= 10^100000
思考の流れ
1. 列挙してみると今回は分かる。
1 -> 11
2 -> 22
3 -> 33
4 -> 44
...
9 -> 99
10 -> 1001
11 -> 1111
12 -> 1221
2. nとnを逆にしたものを出力すれば良い
(回文は「半分が確定すればもう半分が確定する」という性質をうまく使うものが多いです)
解法
http://codeforces.com/contest/688/submission/18816130
string n; //----------------------------------------------------------------- int main() { cin >> n; cout << n; reverse(n.begin(), n.end()); cout << n << endl; }