Quantcast
Channel: 初心者タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 21105

AtCoder 生活 21日目

$
0
0

前回

21日目

今回は、A問題を5問、B問題を5問、C問題を3問解きました

問題番号難易度自力で解けたかかった時間
ABC114A4分23秒
ABC115A3分35秒
ABC116A6分1秒
ABC117A6分50秒
ABC118A5分58秒
ABC117B37分13秒
ABC118B41分20秒
ABC119B29分50秒
ABC120B38分35秒
ABC121B82分38秒
ABC144C31分15秒
ABC145C68分27秒
ABC146C33分16秒

ABC114_A

問題:753

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intx;cin>>x;if(x==3||x==5||x==7){cout<<"YES"<<endl;return0;}cout<<"NO"<<endl;}

解くのにかかった時間:4分23秒

ABC115_A

問題:Christmas Eve Eve Eve

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intd;cin>>d;if(d==25)cout<<"Christmas"<<endl;elseif(d==24)cout<<"Christmas Eve"<<endl;elseif(d==23)cout<<"Christmas Eve Eve"<<endl;elseif(d==22)cout<<"Christmas Eve Eve Eve"<<endl;}

解くのにかかった時間:3分35秒

ABC116_A

問題:Right Triangle

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){inta,b,c;cin>>a>>b>>c;intm=max(max(a,b),c);ints=a*b*c/m;cout<<s/2<<endl;}

解くのにかかった時間:6分1秒

ABC117_A

問題:Entrance Examination

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){doublet,x;cin>>t>>x;doubleans=t/x;cout<<fixed<<setprecision(8)<<ans<<endl;}

解くのにかかった時間:6分50秒

ABC118_A

問題:B +/- A

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){inta,b;cin>>a>>b;if(b%a!=0)cout<<b-a<<endl;elsecout<<a+b<<endl;}

解くのにかかった時間:5分58秒

ABC117_B

問題:Polygon

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intn;cin>>n;vector<int>l(n);rep(i,n)cin>>l[i];intsum=0;intm=1;rep(i,n){sum+=l[i];m=max(m,l[i]);}intres=sum-m;if(res>m)cout<<"Yes"<<endl;elsecout<<"No"<<endl;}

解くのにかかった時間:37分13秒

ABC118_B

問題:Foods Loved by Everyone /

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intn,m;cin>>n>>m;vector<int>cnt(m);rep(i,n){intk;cin>>k;rep(j,k){inta;cin>>a;a--;cnt[a]++;}}intans=0;rep(i,m){if(cnt[i]==n){ans++;}}cout<<ans<<endl;}

解くのにかかった時間:41分20秒

ABC119_B

問題:Digital Gifts

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intn;cin>>n;vector<double>x(n);vector<string>u(n);rep(i,n){cin>>x[i]>>u[i];}doubleb=0;intj;rep(i,n){if(u[i]=="BTC")b+=x[i];elsej+=x[i];}int64_tsum=b*380000+j;cout<<sum<<endl;}

解くのにかかった時間:29分50秒

ABC120_B

問題:K-th Common Divisor

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){inta,b,k;cin>>a>>b>>k;intres=0;rep(i,n){if(a%i==0&&b%i==0){res++;}if(res==k){cout<<i<<endl;return0;}}}

解くのにかかった時間:38分35秒

ABC121_B

問題:Can you solve this?

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){intn,m,c;cin>>n>>m>>c;vector<int>b(m);for(inti=0;i<m;++i){cin>>b[i];}vector<vector<int>>a(n,vector<int>(m));rep(i,n){rep(j,m){cin>>a[i][j];}}intans=0;rep(i,n){intsum=0;rep(j,m){sum+=a[i][j]*b[j];}if(sum+c>0){++ans;}}cout<<ans<<endl;}

解くのにかかった時間:82分38秒

ABC144_C

問題:Walk on Multiplication Table

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;typedeflonglongll;intmain(){lln;cin>>n;llans=pow(10,13);for(lli=1;i*i<=n;i++){if(n%i!=0)continue;llj=n/i;ans=min(ans,i+j-2);}cout<<ans<<endl;}

解くのにかかった時間:31分15秒
感想:forの範囲を i*i <= n で決めれることが出来たなら解けたと思う

ABC145_C

問題:Average Length

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intn;intx[10],y[10];doubledist(inti,intj){doubledx=x[i]-x[j];doubledy=y[i]-y[j];returnpow(dx*dx+dy*dy,0.5);}voidsolve(){cin>>n;for(inti=1;i<=n;i++)cin>>x[i]>>y[i];doublesum=0.0;vector<int>v(n);for(inti=0;i<n;i++)v[i]=i+1;do{for(inti=0;i<N-1;i++)sum+=dist(v[i],v[i+1]);}wile(next_permutation(v.begin(),v.end()));intFactorial=1;for(inti=2;i<=n;i++)Factorial;*=i;cout<<fixed<<setprecision(7)<<sum/Factorial<<endl;return;}intmain(){solve();}

解くのにかかった時間:68分27秒
感想:next_permutationを使えば解けることまでは、わかったが書き方についてまだなれていなかったので解けなかった。

ABC146_C

問題:Buy an Integer

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
usingnamespacestd;intmain(){int64_ta,b,x;cin>>a>>b>>x;int64_tl=0,r=pow(10,9)+1;autoketa=[&](int64_tc){intres=0;while(c){c/=10;res++;}returnres;};autof=[&](int64_tc){returna*c+b*keta(c);};while(r-l>1){int64_tc=(l+r)/2;if(f(c)<=x)l=c;elser=c;}cout<<l<<endl;}

解くのにかかった時間:33分16秒
感想:二分探索の勉強になった。

最後に

A問題は平均5分22秒、B問題は平均34分46秒で解き終わりました。

難易度かかった平均時間解けた問題数
A5分22秒5問中5問
B34分46秒3問中5問

Viewing all articles
Browse latest Browse all 21105

Trending Articles