PAT乙级1037 在霍格沃茨找零钱 (20 分)

it2022-05-05  151

https://pintia.cn/problem-sets/994805260223102976/problems/994805284923359232 进制转换 简单

#include <iostream> using namespace std; int toK(int a, int b, int c){ return (a*17*29 + b*29 + c); } int main(){ int PG, PS, PK, AG, AS, AK, tmpp, tmpk, result, resultG, resultS; scanf("%d.%d.%d %d.%d.%d", &PG, &PS, &PK, &AG, &AS, &AK); tmpp = toK(PG, PS, PK), tmpk = toK(AG, AS, AK); result = tmpk - tmpp; if(result < 0){ cout << "-"; result = -result; } resultG = result / (29*17); result %= 29*17; resultS = result / 29; result %= 29; printf("%d.%d.%d", resultG, resultS, result); return 0; }

最新回复(0)