#include<iostream>#include<cmath>usingnamespace std;intmain(){constint x =233, y =666;// 计算极坐标系半径constdouble r =hypot(x, y);// 计算旋转角度(弧度制)constdouble theta =atan2(y, x);// 总距离 = 直线移动 + 弧线移动constdouble total = r + r * theta;// 四舍五入取整输出
cout <<static_cast<int>(total +0.5)<< endl;// 输出1576return0;}
B. 客流量上限(5分)
#include<iostream>usingnamespace std;constint MOD =1e9+7;intfast_pow(int base,int exp){int res =1;while(exp >0){if(exp &1) res =1LL* res * base % MOD;
base =1LL* base * base % MOD;
exp >>=1;}return res;}intmain(){constint n =2025;// 计算指数 (2025-1)/2 = 1012
cout <<fast_pow(2,(n-1)/2)<< endl;// 输出781448427return0;}
#include<iostream>usingnamespace std;voidprocess(int& a,int& b,int& c,int k){while(k--){int na =(b + c)/2;int nb =(a + c)/2;int nc =(a + b)/2;// 提前终止条件:数值不再变化if(na == a && nb == b && nc == c)break;
a = na; b = nb; c = nc;}}intmain(){int T;
cin >> T;while(T--){int a, b, c, k;
cin >> a >> b >> c >> k;process(a, b, c, k);
cout << a <<" "<< b <<" "<< c << endl;}return0;}
E. 画展布置(15分)
#include<iostream>#include<vector>#include<algorithm>usingnamespace std;intmain(){int N, M;
cin >> N >> M;
vector<longlong>nums(N);for(auto& num : nums) cin >> num;// 排序后滑动窗口找最小差值sort(nums.begin(), nums.end());longlong min_val =1e18;// 窗口滑动范围[i, i+M-1]for(int i =0; i <= N - M;++i){longlong diff = nums[i+M-1]* nums[i+M-1]- nums[i]* nums[i];
min_val =min(min_val, diff);}
cout << min_val;return0;}