ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#170410 | #1261. 化简分数(2) | luojianwei2216 | 100 | 1ms | 1200kb | C++ | 419b | 2023-04-20 22:30:24 | 2023-04-20 22:30:26 |
answer
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, m, maxc = 1, df = 0;
cin >> n >> m;
if(n % m == 0) {cout << n / m; return 0;}
for(int i = 2; i <= n; i++) {
if(n % i == 0 && m % i == 0) maxc = i;
}
if(n / maxc > m / maxc) {
df = n / m;
n -= df * m;
}
if(df == 0) cout << n / maxc << '/' << m / maxc;
else cout << df << '+' << n / maxc << '/' << m / maxc;
return 0;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 33
Accepted
time: 0ms
memory: 1200kb
input:
64 24
output:
2+2/3
result:
ok single line: '2+2/3'
Test #2:
score: 33
Accepted
time: 0ms
memory: 1196kb
input:
8 4
output:
2
result:
ok single line: '2'
Test #3:
score: 33
Accepted
time: 1ms
memory: 1200kb
input:
24 64
output:
3/8
result:
ok single line: '3/8'