PAT BB1088 三人行(C++) 发表于 2018-12-03 | 分类于 PAT题解 | | 字数统计: 213 字 | 阅读时长 ≈ 1 分钟 PAT甲级目录 | PAT乙级目录 题目描述 B1088 三人行 解题思路利用两个循环,分别遍历两位数字,然后判断是否满足要求,如果满足则输出结果并退出循环。 易错点 不使用 double 存储的话,除法的时候因为类型不一致,转换容易出错 代码示例:1234567891011121314151617181920212223242526#include <iostream>#include <cmath>using namespace std;int main(){ int M, X, Y; double A[3]; cin >> M >> X >> Y; for(int i = 9; i > 0; i--){ for(int j = 9; j >= 0; j--){ A[0] = i * 10 + j; A[1] = i + j * 10; A[2] = 1.0 * abs(A[0] - A[1]) / X; if(A[1] == A[2] * Y){ cout << A[0]; for(int k = 0; k < 3; k++){ if(A[k] > M) cout << " Cong"; else if(A[k] == M) cout << " Ping"; else cout << " Gai"; } return 0; } } } cout << "No Solution" << endl; return 0;} 本文作者: Philo 本文链接: http://lulalap.com/2018/12/03/PAT-B1088-cpp/ 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!