結果
問題 | No.438 Cwwプログラミング入門 |
ユーザー |
![]() |
提出日時 | 2016-10-29 19:59:56 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 1,885 bytes |
コンパイル時間 | 1,373 ms |
コンパイル使用メモリ | 160,852 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-27 22:16:14 |
合計ジャッジ時間 | 4,591 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 98 |
ソースコード
#include <bits/stdc++.h> #define rep(i,n) for(int i=0;i<n;i++) #define int long long using namespace std; typedef long long ll; int x, y, z; /* int extgcd(int a, int b, int& x, int& y) { int d = a; if (b != 0) { d = extgcd(b, a % b, y, x); y -= (a / b) * x; } else { x = 1; y = 0; } return d; } */ signed main() { cin >> x >> y >> z; if (x == 0 && y == 0 && z == 0) { cout << "ccW" << endl; return 0; } if (x == 0 && y == 0 && z != 0) { cout << "mourennaihasimasenn" << endl; return 0; } if (y == 0) { if (z % x == 0 && z / x * 2 - 1 <= 10000) { int cnt = z / x; rep(i,cnt) cout << 'c'; rep(i,cnt-1) cout << 'C'; cout << endl; return 0; } else { cout << "mourennaihasimasenn" << endl; return 0; } } if (x == 0) { if (z % y == 0 && z / y * 2 - 1 <= 10000) { int cnt = z / y; rep(i,cnt) cout << 'w'; rep(i,cnt-1) cout << 'C'; cout << endl; return 0; } else { cout << "mourennaihasimasenn" << endl; return 0; } } for (int a=-5000; a<=5000; a++) { if ((z - a * x) % y == 0) { int b = (z - a * x) / y; if (2 * abs(a) + 2 * abs(b) - 1 <= 10000) { //printf("a = %lld, b = %lld\n", a, b); if (a == 0 && b == 0) { cout << "ccW" << endl; return 0; } else if (a * b < 0) { if (a < 0) { rep(i,-a) cout << 'c'; rep(i,-a-1) cout << 'C'; rep(i,b) cout << 'w'; rep(i,b-1) cout << 'C'; cout << 'W' << endl; return 0; } else if (b < 0) { rep(i,-b) cout << 'w'; rep(i,-b-1) cout << 'C'; rep(i,a) cout << 'c'; rep(i,a-1) cout << 'C'; cout << 'W' << endl; return 0; } } else { rep(i,a) cout << 'c'; rep(i,a-1) cout << 'C'; rep(i,b) cout << 'w'; rep(i,b-1) cout << 'C'; cout << 'C' << endl; return 0; } } } } cout << "mourennaihasimasenn" << endl; }