【玄关】20分求助

P1143 进制转换

@[fire_wolf](/user/690669) 将 `if(n[i] > '9') b += (pow(k,cnt++)) * n[i] - 'A';`改为 `if(n[i] > '9') b += (pow(k,cnt++)) * (n[i] - 'A' + 10);`
by __zaa__ @ 2024-04-26 14:41:16


@[__zaa__](/user/716965) 还是20分,https://www.luogu.com.cn/record/157080700
by fire_wolf @ 2024-04-26 14:53:17


@[fire_wolf](/user/690669) ``` #include<bits/stdc++.h> using namespace std; string numbers = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int k,m; string n; long long b = 0; char a[1010]; int main(){ cin >> k >> n >> m; int cnt = 0; for(int i = n.size() - 1;i >= 0;i--){ if(n[i] > '9') b += (pow(k,cnt++)) * (n[i] - 'A'+10); else b += (pow(k,cnt++)) * (n[i] - '0'); } cnt = 1; while(b){ a[cnt++] = numbers[b % m]; b /= m; } for(int i = cnt - 1;i >= 1;i--){ cout << a[i]; } return 0; } ```
by __zaa__ @ 2024-04-26 15:27:21


@[__zaa__](/user/716965) AC 了,已关,感谢大佬!
by fire_wolf @ 2024-04-27 09:30:24


|