Lang:G++
Edit12345678910111213141516171819202122232425262728293031#pragma warning(disable:4996)#include <iostream>#include <string.h>#include <stdio.h>#include <string>#include <algorithm>#include <queue>#include <map>;using namespace std;const int maxn = 105;typedef long long ll;typedef pair<int, int> pii;int ten[] = { 1,10,100,1000,10000,100000,1000000,10000000,100000000 };int gao(int x, int p, int pp) {int tmp = x;if (abs(p - pp) > 1) {int yi = (tmp / ten[p]) % 100;int er = (tmp / ten[pp]) % 100;return tmp - yi*ten[p] - er*ten[pp] + yi*ten[pp] + er*ten[p];}else if (p < pp) {int yi = (tmp / ten[p]) % 100;int er = (tmp / ten[pp + 1]) % 10;return tmp - yi*ten[p] - er*ten[pp + 1] + yi*ten[pp] + er*ten[p];}else {int yi = (tmp / ten[p]) % 100;int er = (tmp / ten[pp]) % 10;return tmp - yi*ten[p] - er*ten[pp] + yi*ten[pp] + er*ten[p + 1];}}