观察到 进制是26,但’Z’表示为26,但应该是25,和进制26重叠了。我们在短除法中手动偏移1位
(在其它题解看到的)
进制转换
#include <iostream>
#include <algorithm>
using namespace std;
char get(int x)
{
return x + 'A';
}
int main()
{
int x;
cin >> x;
string res;
while(x){
res += get((x - 1) % 26), x = (x - 1) / 26;
}
reverse(res.begin(),res.end());
cout << res;
}
为啥应该25,是A当0看么?
对