使用 sstream 方便输入输出,
用于判断某个元素是否被访问过, 在数组开不下的时候可以使用 set集合
#include <iostream>
#include <sstream>
#include <set>
using namespace std;
int next(int n, int k){
stringstream ss;
ss << (long long)k*k;
string s = ss.str();
if (s.size() > n) s = s.substr(0, n);
int ans;
stringstream ss2(s);
return ans;
}
int main(){
int T;
cin >> T;
while (T--)
{
int n, k;
cin >> n >> k;
set<int> s;
int ans = k;
while (!s.count((k)))
{
s.insert(k);
if (k > ans) ans = k;
k = next(n, k);
}
cout << ans << endl;
}
return 0;
}
浙公网安备 33010602011771号