Particle

競技プログラミングについての雑記

2012-09-01から1ヶ月間の記事一覧

Codeforces Round #138 (Div. 2)

A 最初O(n^3)で書いてhackされてしまった。(O(n^3)のままですが、適当にbreakとかcontinueしてるので問題ないです) ソース int main(){ int a[3]; cin>>a[0]>>a[1]>>a[2]; sort(a,a+3); for(int i = 1; i <= 10000; i++){ if(a[0]%i||a[1]%i)continue; for(i…

ARC #007

A ソース int main(){ char c; string s; cin>>c>>s; for(int i = 0; i < s.size(); i++){ if(s[i]!=c)cout<<s[i]; } cout<<endl; return 0; } B ソース int main(){ int n,m; cin>>n>>m; vector<int> d(n+1); for(int i = 0; i <= n; i++)d[i]=i; for(int i = 0; i < m; i++){ int a; cin>>a; for(int i = 0; i < n+1; i++){ if(…</int></s[i];>

SRM397 Div2

Easy ソース class BreakingTheCode{ public: string decodingEncoding(string s, string t) { string ans; if('0'<=t[0]&&t[0]<='9'){ for(int i = 1; i < t.size(); i+=2){ int a = 10*(t[i-1]-'0')+t[i]-'0'; ans+=s[a-1]; } }else { for(int i = 0; i < …

SRM554 Div1

今回も結果が良くないのに、challengeのお陰で、ratingが上がりました。 Easy 解法 このソースのように場合分けする。 赤と青のレンガの高さが同じ時は、積める個数を数える。 違うときは、赤が1個多い時と、青が1個多い時を区別して数える。 ソース class T…

Problem 89

できるだけ綺麗に書こうとしましたが、微妙です。 解法 実装する ソース #include <iostream> using namespace std; int rd(char c){ if(c=='I')return 1; if(c=='X')return 10; if(c=='C')return 100; if(c=='M')return 1000; if(c=='V')return 5; if(c=='L')return 5</iostream>…