3.21刷题
P6723 [COCI 2015/2016 #5] ZAMKA - 洛谷
#include<bits/stdc++.h>
using namespace std;
int weisum(int n){
int sum=0;
while(n){
sum+=n%10;
n/=10;
}
return sum;
}
int main(){
int l,d,x,minn=10000,maxm=0;
cin>>l>>d>>x;
for(int i=l;i<=d;i++){
if(weisum(i)==x){
if(i<minn) minn=i;
if(i>maxm) maxm=i;
}
}
cout<<minn<<endl<<maxm;
return 0;
}
P6745 『MdOI R3』Number - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
long long x,k,ans=1,i=0;
cin>>k>>x;
if(k<=18){
for(int i=0;i<k;i++) ans*=10;
ans+=x;
cout<<ans;
}else{
ans=x;
while(ans){
i++;
ans/=10;
}
cout<<1;
for(int m=0;m<(k-i);m++) cout<<0;
if(x!=0)
cout<<x;
}
return 0;
}
P6832 [Cnoi2020] 子弦 - 洛谷
#include<bits/stdc++.h>
using namespace std;
int f[30];
int main(){
string s;
int ans=0;
cin>>s;
for(int i=0;i<s.size();i++){
f[int(s[i]-'a')]++;
}
for(int i=0;i<=26;i++){
if(f[i]>ans) ans=f[i];
}
cout<<ans;
return 0;
}
P6850 NOI - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
long long a,b,c,d,e,f,g,h,i,ans=0;
cin>>a>>b>>c>>d>>e>>f>>g>>h>>i;
ans=(50+a+b+c+d+e+f+g);
if(h==1) ans+=5;
if(ans>=i) cout<<"AKIOI";
else cout<<"AFO";
return 0;
}
P6866 [COCI 2019/2020 #5] Emacs - 洛谷
#include<bits/stdc++.h>
using namespace std;
char c[110][110];
int main(){
int n,m,ans=0;
cin>>n>>m;
for(int i=0;i<=n;i++) c[i][0]='.',c[i][m+1]='.';
for(int i=0;i<=m;i++) c[0][i]='.',c[n+1][i]='.';
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++) cin>>c[i][j];
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(c[i][j]=='*'&&c[i-1][j]=='.'&&c[i][j-1]=='.') ans++;
}
}
cout<<ans;
return 0;
}
P6882 [COCI 2016/2017 #3] Imena - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,ans=0;
string s;
cin>>n;
while(cin>>s&&s!="\n"){
if(s[s.size()-1]=='.'||s[s.size()-1]=='?'||s[s.size()-1]=='!'){
int flag=1;
for(int i=0;i<s.size()-1;i++){
if(i==0&&s[i]>='A'&&s[i]<='Z')
continue;
else if(i!=0&&s[i]>='a'&&s[i]<='z')
continue;
else flag=0;
}
if(flag) ans++;
cout<<ans<<endl;
ans=0;
}else{
int flag=1;
for(int i=0;i<s.size();i++){
if(i==0&&s[i]>='A'&&s[i]<='Z')
continue;
else if(i!=0&&s[i]>='a'&&s[i]<='z')
continue;
else flag=0;
}
if(flag) ans++;
}
}
return 0;
}
B3743 [语言月赛202304] 扶苏与 0 - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
long long x,z,ans=0;
cin>>x;
while(x){
z=x%10;
if(z==2||z==6||z==9||z==0) ans+=1;
else if(z==8) ans+=2;
x/=10;
}
cout<<ans;
return 0;
}
B3744 [语言月赛202304] 移植柳树 - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
long long n,x,y,ans=0;
cin>>n>>x>>y;
for(int i=0;i<n;i++){
if(i*x%y==0) ans++;
}
cout<<ans;
return 0;
}
B3745 [语言月赛202304] 你的牌太多了 - 洛谷
#include<bits/stdc++.h>
using namespace std;
int f1[110],p1[110],f2[110],p2[110],pos[110];
int main(){
int n,m,r,chu,ans=0;
cin>>n>>m>>r;
for(int i=1;i<=n;i++) cin>>f1[i];
for(int i=1;i<=n;i++) cin>>p1[i];
for(int i=1;i<=n;i++) cin>>f2[i];
for(int i=1;i<=n;i++) cin>>p2[i];
for(int i=1;i<=n;i++){
cin>>chu;
int cnt=0;//记录点数比它大的最小的牌的位置
for(int j=1;j<=n;j++){
if(f2[j]==f1[chu]&&p2[j]>p1[chu]&&pos[j]==0){
if(cnt==0) cnt=j;
else if(p2[cnt]>p2[j]) cnt=j;//比chu大的最小牌
}
}
if(cnt!=0&&pos[cnt]==0) pos[cnt]=1,ans++;
}
cout<<n-ans;
return 0;
}
B3746 [语言月赛202304] 洛谷评测机模拟器 - 洛谷
#include<bits/stdc++.h>
using namespace std;
long long f[5010];
int t[5010],g[5010];//f是每个测评机器的总消耗时间
//g保存每个测评任务使用的测评机器
int main(){
int n,m;
cin>>n>>m;
for(int i=1;i<=m;i++) cin>>t[i];
for(int i=1;i<=m;i++){
int pos=0;
long long sum=LONG_MAX;
for(int j=1;j<=n;j++){//遍历f,找到最小的时间
if(f[j]<sum) sum=f[j],pos=j;
}
g[i]=pos,f[pos]+=t[i];
}
for(int i=1;i<=n;i++){
int flag=0;
for(int j=1;j<=m;j++){
if(g[j]==i) flag=1,cout<<j<<" ";
}
if(!flag) cout<<0;
cout<<endl;
}
return 0;
}
B3762 [语言月赛202305] 线性代数初步 - 洛谷
#include<bits/stdc++.h>
using namespace std;
int main(){
long long a,b,c,d;
cin>>a>>b>>c>>d;
cout<<a*d-b*c;
return 0;
}