CCF CSP 第37次(2025.03)(1_数值积分_C++)
CCF CSP 第37次(2025.03)(1_数值积分_C++)
- 解题思路:
- 思路一:
- 代码实现
- 代码实现(思路一):
时间限制: 1.0 秒
空间限制: 512 MiB
原题链接
解题思路:
思路一:
1、解题步骤拆分:
① 数据输入:输入仅一行 b c l r (b, c 为二次函数的系数,l, r 为区间的左端点和右端点)。
② 数据处理:计算区间内所有偶数点的函数值和,再乘以2。
③ 数据输出:输出最终计算的结果。
代码实现
代码实现(思路一):
#include<iostream>
#include<vector>
using namespace std;
int main(int argc, char const *argv[])
{// 输入:b 和 c 是二次函数的系数,l 和 r 是给定的区间端点long long b, c, l, r;cin >> b >> c >> l >> r;// 偶数点的函数值和long long evenSum = 0;// 如果l是奇数,跳过到下一个偶数if (l % 2 == 1) {l = l + 1; // 如果l是奇数,就把l加1,使其变为偶数}// 遍历区间内所有偶数点 x,计算每个x对应的二次函数值并累加for (long long x = l; x <= r; x += 2) { // x每次增加2,确保是偶数evenSum += (x * x + b * x + c); // 计算x对应的二次函数值,并累加到evenSum}// 输出最终结果:偶数点函数值和乘以2cout << 2 * evenSum << endl;return 0; // 返回0,程序结束
}
欢迎大家和我沟通交流(✿◠‿◠)