結果
問題 |
No.438 Cwwプログラミング入門
|
ユーザー |
![]() |
提出日時 | 2019-04-20 18:52:00 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,324 bytes |
コンパイル時間 | 273 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 532,028 KB |
最終ジャッジ日時 | 2024-10-01 20:35:58 |
合計ジャッジ時間 | 17,144 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 49 WA * 3 RE * 16 MLE * 1 -- * 29 |
ソースコード
MAX = 100000000 def bsearch(min, max, target): while min < max: middle = (min + max) // 2 if middle == target: return middle elif middle < target: min = middle + 1 elif target < middle: max = middle -1 else: return -1 def encode(p, q, negative): code = [] if positive: for _ in range(p): code.append('c') for _ in range(q): code.append('w') for _ in range(p+q-1): code.append('C') else: for _ in range(q): code.append('w') for _ in range(p): code.append('c') for _ in range(p-1): code.append('C') for _ in range(q): code.append('W') return ''.join(code) X,Y,Z = list(map(int, input().split())) # p * X + q * Y = Z coef = None positive = True for p in range(MAX+1): rest = Z - p * X if rest % Y == 0: target = rest // Y if target < 0: positive = False q = bsearch(0, MAX+1, abs(target)) if q != -1: coef = (p,q) break if coef: p,q = coef code = encode(p, q, positive) if 10000 < len(code): print('NO') else: print(code) else: print('NO')