結果
問題 |
No.438 Cwwプログラミング入門
|
ユーザー |
![]() |
提出日時 | 2016-10-28 23:13:17 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 839 bytes |
コンパイル時間 | 3,280 ms |
コンパイル使用メモリ | 160,664 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-24 18:47:23 |
合計ジャッジ時間 | 9,702 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 60 WA * 32 RE * 6 |
ソースコード
#include<bits/stdc++.h> using namespace std; string mks(int a,int b){ int i;string s; if(a>0) s="c",a--; else s="w",b--; for(i=0;i<abs(a);i++){ if(a<0) s+="cW"; else s+="cC"; } for(i=0;i<abs(b);i++){ if(b<0) s+="wW"; else s+="wC"; } return s; } int main(){ int x,y,z; cin>>x>>y>>z; int i,j,k; string s; bool f=true; k=__gcd(x,y); if(z%k!=0) f=false; if(max(x,y)*5000<z) f=false; if(f){ for(i=0;i<=5000;i++){ if((z-i*x)%y) continue; j=(z-i*x)/y; if(i+abs(j)<=5000){ s=mks(i,j); break; } } for(i=0;i<=5000;i++){ if((z-i*y)%x) continue; j=(z-i*y)/x; if(i+abs(j)<=5000){ s=mks(j,i); break; } } } //cout << s << endl; if(s.size()==0||s.size()>10000) f=false; cout << (f?s:"mourennaihasimasenn") << endl; return 0; }