1 条题解
-
0
自动搬运
来自洛谷,原作者为

PR_CYJ
逆水行舟,不进则退搬运于
2025-08-24 22:56:00,当前版本为作者最后更新于2024-03-11 21:58:06,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
题目传送门
思路
这道题很简单,思路也很明显,一眼就可以看出来是前缀和。
数据读入时,我们用 数组来进行预处理。其中 代表前 个音符的得分和。
然后是 次询问,我们只需要输出 即可。
注意不要用
memset!!!否则会 TLE!!!代码
- 切勿抄袭!!!
#include<bits/stdc++.h> using namespace std; int a[10000010]; int main() { int T; scanf("%d",&T); while(T--) { string s; int q; cin>>s; scanf("%d",&q); int n=s.size(); for(register int i=1;i<=n;i++) { a[i]=a[i-1];//避免使用 memset if (s[i-1]=='P') a[i]+=3; else if (s[i-1]=='p') a[i]+=2; else if (s[i-1]=='G') a[i]++; } for(register int i=1;i<=q;i++) { int l,r; scanf("%d%d",&l,&r); printf("%d\n",a[r]-a[l-1]); } } }
- 1
信息
- ID
- 9765
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者