1 条题解
-
0
核心逻辑
计算余数的逻辑不变:通过
k = floor(a / b)确定整数商,再用r = a - k * b求得余数(满足0 ≤ r < b)。关键修正输出格式,需自动保留有效小数位数,去除尾部无意义的零。代码实现
C
#include <stdio.h> #include <math.h> int main() { double a, b; scanf("%lf %lf", &a, &b); double k = floor(a / b); double r = a - k * b; printf("%g\n", r); // %g自动处理有效位数,去除尾部零 return 0; }C++
#include <bits/stdc++.h> using namespace std; int main() { double a, b; cin >> a >> b; double r = a - floor(a / b) * b; cout << r << endl; // cout默认去除尾部零,保留有效位数 return 0; }Python
import math a, b = map(float, input().split()) k = math.floor(a / b) r = a - k * b print("{0:g}".format(r)) # 'g'格式自动处理有效位数和尾部零格式说明
- 三种语言均使用“自动适配有效位数”的格式(C的
%g、C++的cout默认、Python的g),确保:- 样例输入
73.263 0.9973输出0.4601(4位有效小数); - 其他测试用例根据结果自动保留1-4位小数,去除尾部零(如
5024.45、16628.4等)。
- 样例输入
- 计算逻辑严格遵循余数定义,确保
0 ≤ r < b。
- 三种语言均使用“自动适配有效位数”的格式(C的
- 1
信息
- ID
- 429
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 384
- 已通过
- 39
- 上传者