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

AtCoder 生活 6日目

$
0
0

前回

6日目

今回も前回と同じように@drkenさんのAtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~の第8問から第10問まで解きました。

第8問 ABC085_C

Otoshidama

#include <bits/stdc++.h>
usingnamespacestd;intmain(){intN,Y;cin>>N>>Y;intresidue=0;intres10000=-1,res5000=-1,res1000=-1;for(intx=0;x<=N;x++){for(inty=0;y<=N-x;y++){intz=N-x-y;inttotal=10000*x+5000*y+1000*z;if(total==Y){res10000=x;res5000=y;res1000=z;}}}cout<<res10000<<" "<<res5000<<" "<<res1000<<endl;}

解けなかったが、理解はしやすかった。

第9問 ABC049_C

白昼夢

#include <bits/stdc++.h>
usingnamespacestd;stringdivide[4]={"dream","dreamer","erase","eraser"};intmain(){stringS;cin>>S;reverse(S.begin(),S.end());for(inti=0;i<4;++i)reverse(divide[i].begin(),divide[i].end());boolcan=true;for(inti=0;i<S.size();){boolcan2=false;for(intj=0;j<4;++j){stringd=divide[j];if(S.substr(i,d.size())==d){can2=true;i+=d.size();}}if(!can2){can=false;break;}}if(can)cout<<"YES"<<endl;elsecout<<"NO"<<endl;}

substr関数の使い方とbool型をよく知れました。

第10問 ABC086_C

Traveling

#include<bits/stdc++.h>
usingnamespacestd;intmain(){intN;intt[110000],x[110000],y[110000];cin>>N;t[0]=x[0]=y[0]=0;for(inti=0;i<N;++i)cin>>t[i+1]>>x[i+1]>>y[i+1];boolcan=true;for(inti=0;i<N;++i){intdt=t[i+1]-t[i];intdist=abs(x[i+1]-x[i])+abs(y[i+1]-y[i]);if(dt<dist)can=false;if(dist%2!=dt%2)can=false;}if(can)cout<<"Yes"<<endl;elsecout<<"No"<<endl;}

解説を見ればなんとかなるけど、C問題となるとまず最初に何をらればいいかすらわからなくなりました。

とりあえず10問とき終わったので、次からはほかのB問題を解いていこうと思います。


Viewing all articles
Browse latest Browse all 21093

Trending Articles