出题人题解|灵光
2024-11-25 04:04:46
发布于:浙江
28阅读
0回复
0点赞
题目大意
在一个数轴上,“光明之心”位于原点位置。
在距离“光明之心”左侧 光年处,有一颗行星,能够像镜子一样反射光线。同样地,在“光明之心”的右侧 光年处,也有一颗行星,它同样拥有反射光线。这两个行星相互之间会不停地反射。
我们需要找出这些虚像中,位于“光明之心”左侧或右侧第 个虚像相对于“光明之心”的距离。
题意分析
找到 的坐标规律即可。
需要注意 到光明之心的距离大于 ,所以 才是右侧第二个虚像。
对于 有:
因此得出:
- 当 为奇数时,
- 当 为偶数时,
同样地,对于 有:
因此得出:
- 当 为奇数时,
- 当 为偶数是,
解题思路
输入之后根据方向 和 以及 的奇偶输出对应算式的结果即可。
时间复杂度解析
此程序时间复杂度为
代码演示
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL t, l, r;
int main() {
cin >> t >> l >> r;
while (t--) {
LL k;
char op;
cin >> op >> k;
if (op == 'L') {
if (k % 2 == 1) cout << (k + 1) * l + (k - 1) * r << '\n';
else cout << (l + r) * k << '\n';
}
else {
if (k % 2 == 1) cout << (k + 1) * r + (k - 1) * l << '\n';
else cout << (l + r) * k << '\n';
}
}
return 0;
}
这里空空如也
有帮助,赞一个