社区讨论

95分求调玄关(普及-) B2141

灌水区参与者 2已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@lyjjvlnk
此快照首次捕获于
2024/07/13 11:11
2 年前
此快照最后确认于
2024/07/13 13:54
2 年前
查看原帖
95分求调
https://www.luogu.com.cn/problem/B2141 https://www.luogu.com.cn/record/165654276
C
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
/**
 * @author suystar_bg
 * @date 2024/7/13
 */
long long convertToDecimal(string number, int base) {
    long long result = 0;
    long long multiplier = 1;
    for (int i = number.size() - 1; i >= 0; i--) {
        result += (number[i] - '0') * multiplier;
        multiplier *= base;
    }
    return result;
}

int main() {
    string p, q, r;
    cin >> p >> q >> r;
    
    for (int base = 2; base <= 16; base++) {
        long long decimalP = convertToDecimal(p, base);
        long long decimalQ = convertToDecimal(q, base);
        long long decimalR = convertToDecimal(r, base);
        
        if (decimalP * decimalQ == decimalR) {
            cout << base << endl;
            return 0;
        }
    }
    
    cout << 0 << endl;
    return 0;
}

回复

7 条回复,欢迎继续交流。

正在加载回复...