Do what you are told to do.
Code:
- /*************************************************************************
- * Copyright (C) 2008 by liukaipeng *
- * liukaipeng at gmail dot com *
- *************************************************************************/
- /* @JUDGE_ID 00000 10018 C++ "Reverse and Add" */
- #include <algorithm>
- #include <cstdio>
- #include <cstring>
- #include <deque>
- #include <fstream>
- #include <iostream>
- #include <list>
- #include <map>
- #include <queue>
- #include <set>
- #include <stack>
- #include <string>
- #include <vector>
- using namespace std;
- typedef unsigned int uint;
- int main(int argc, char *argv[])
- {
- #ifndef ONLINE_JUDGE
- freopen((string(argv[0]) + ".in").c_str(), "r", stdin);
- freopen((string(argv[0]) + ".out").c_str(), "w", stdout);
- #endif
- int ncases;
- cin >> ncases;
- while (ncases-- > 0) {
- uint n;
- cin >> n;
- int niters = 0;
- for (; ; ) {
- uint r = 0;
- for (uint t = n; t != 0; t /= 10)
- r = r * 10 + t % 10;
- if (r == n) break;
- n += r;
- ++niters;
- }
- cout << niters << ' ' << n << '/n';
- }
- return 0;
- }