AtCoder_abc328
A - Not Too Hard
题目大意
给出\(N\)个数(\(S_1\) \(S_2\)...\(S_n\))和一个\(X\),输出所有小于等于\(X\)的\(S_i\)之和
解题思路
循环遍历每一个\(S_i\)并判断是否大于\(X\)
代码
// Problem: A - Not Too Hard
// Contest: AtCoder - Toyota Programming Contest 2023#7(AtCoder Beginner Contest 328)
// URL: https://atcoder.jp/contests/abc328/tasks/abc328_a
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
#include<bits/stdc++.h>
using namespace std;
int n,t,x,sum;
int main(){
cin>>n>>x;
for(int i=1;i<=n;i++){
int t;cin>>t;
if(t<=x)
sum+=t;
}
cout<<sum;
return 0;
}
B - 11/11
题目大意
AtCoder的国王使用一个包含\(N\)个月的日历,第\(i\)个月有\(D_i\)天。有多少天的月和日能用同一个十进制数表示出来?
举个例子:
这里是一些符合要求的日期:1.1 , 1.11 , 2.2 ,11.1
一些不符合要求的日期:1.2 , 4.3 , 10.10(用了1和0两个数) , 12.12(用了1和2两个数)
解题思路
可以通过取余和整除判断月和日每一位都相等
代码
// Problem: B - 11/11
// Contest: AtCoder - Toyota Programming Contest 2023#7(AtCoder Beginner Contest 328)
// URL: https://atcoder.jp/contests/abc328/tasks/abc328_b
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
#include<bits/stdc++.h>
using namespace std;
int n,ans;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
int t;cin>>t;
if(i<10||i%10==i/10)
for(int j=1;j<=t;j++){
int f=1;
int x=j;
while(x){
if(x%10!=i%10){
f=0;
break;
}
x/=10;
}
ans+=f;
}
}
cout<<ans;
return 0;
}
C - Consecutive
题目大意
给出\(N,Q\)以及一个长度为\(N\)的字符串\(S\),接下来是
\(l_1,r_1\)
\(l_2,r_2\)
\(\vdots\,\,\,\,\,\,\,\vdots\)
\(l_q,r_q\)
要求对于每一组\(l_i,r_i(1 \le i \le q)\),输出在有多少个\(S_j(l \le j \le r-1)\)满足\(S_j=S_{j+1}\)
解题思路
没错,就是它:前缀和。定义一个前缀和数组\(sum,sum_i\)表示从\(S_1\)到\(S_i\)有多少个满足,\(O(N)\)初始化\(sum\)之后\(O(Q)\)输出就好了
代码
// Problem: C - Consecutive
// Contest: AtCoder - Toyota Programming Contest 2023#7(AtCoder Beginner Contest 328)
// URL: https://atcoder.jp/contests/abc328/tasks/abc328_c
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
#include<bits/stdc++.h>
using namespace std;
int n,q;
int sum[300005];
string s;
int main(){
cin>>n>>q>>s;
s=" "+s;
for(int i=1;i<n;i++){
if(s[i]==s[i+1])
sum[i]++;
sum[i]+=sum[i-1];
}
for(int i=1;i<=q;i++){
int l,r;cin>>l>>r;
cout<<sum[r-1]-sum[l-1]<<endl;
}
return 0;
}
D - Take ABC
题目链接
非常好题目,这令我大脑停转!
时间仓促,如有错误欢迎指出,欢迎在评论区讨论,如对您有帮助还请点个推荐、关注支持一下
作者:博客园 - 某谦
出处:https://www.cnblogs.com/lmq742643
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
若内容有侵犯您权益的地方,请公告栏处联系本人,本人定积极配合处理解决。