はい。
AtCoder Beginner Contest 111
AtCoder Regular Contest 103と同時開催回。
A - AtCoder Beginner Contest 999
n=input() s="" for i in n: if i=="1" or i=="9": s+=["1","9"][i!="9"] else: s+=i print(s)
#include<bits/stdc++.h> using namespace std; #define rep(i,n) for(int i=0;i<n;++i) int main(){ char s[5]; scanf("%s",s); rep(i,3) { if (s[i]=='1') printf("%c",'9'); else if (s[i]=='9') printf("%c",'1'); else printf("%c",s[i]); } puts(""); return 0; }
頑張って置き換えます。
B - AtCoder Beginner Contest 111
n=int(input()) for i in range(n,1000): if i%111==0: print(i) exit()
#include<bits/stdc++.h> using namespace std; #define sc1(a) scanf("%d",&a) int main(){ int n,m,ans; sc1(n); printf("%d\n",(n/100*111)>=n?n/100*111:(n/100+1)*111); return 0; }
ループ回しても111で上手く割り切れるのを探そうとするのも。
C - /\/\/\/
n=int(input()) #n,k=map(int,input().split()) l=[int(i) for i in input().split()] e,o={0:0},{0:0} for a,i in enumerate(l): if a%2: if i in o: o[i]+=1 else: o[i]=1 else: if i in e: e[i]+=1 else: e[i]=1 chko,chke=[0,0,0,0],[0,0,0,0] for i in e: if e[i]>=chke[1]: chke[3]=chke[1] chke[2]=chke[0] chke[1]=e[i] chke[0]=i elif e[i]>=chke[3]: chke[3]=e[i] chke[2]=i for i in o: if o[i]>=chko[1]: chko[3]=chko[1] chko[2]=chko[0] chko[1]=o[i] chko[0]=i elif o[i]>=chko[3]: chko[3]=o[i] chko[2]=i if chko[0]!=chke[0]: print((n//2-chko[1])+(n//2-chke[1])) else: ans=min((n//2-chko[1])+(n//2-chke[3]),(n//2-chko[3])+(n//2-chke[1])) print(ans)
#include<bits/stdc++.h> using namespace std; #define rep(i,n) for(int i=0;i<n;++i) #define sc1(a) scanf("%d",&a) int main(){ int n,m; sc1(n); pair<int, int> p={0,0}, q={0,0}; map<int ,int> a, b; rep(i,n){ sc1(m); if(i%2) a[m]++; else b[m]++; } for(auto x=a.begin();x!=a.end();x++) { if (x->second > a[p.first]) { p.second=p.first; p.first = x->first; } else if (x->second > a[p.second]) { p.second = x->first; } } for(auto x=b.begin();x!=b.end();x++) { if (x->second > b[q.first]) { q.second=q.first; q.first = x->first; } else if (x->second > b[q.second]) { q.second = x->first; } } printf("%d\n",p.first!=q.first?(n/2-a[p.first])+(n/2-b[q.first]):min((n/2-a[p.second])+(n/2-b[q.first]), (n/2-a[p.first])+(n/2-b[q.second]))); return 0; }
最多のものや2番目の多いものを探してよしなに。