結果
問題 |
No.438 Cwwプログラミング入門
|
ユーザー |
![]() |
提出日時 | 2016-10-28 22:58:04 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 2,575 bytes |
コンパイル時間 | 4,470 ms |
コンパイル使用メモリ | 81,004 KB |
実行使用メモリ | 572,136 KB |
最終ジャッジ日時 | 2024-11-24 18:33:26 |
合計ジャッジ時間 | 38,012 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 33 WA * 39 RE * 24 MLE * 2 |
ソースコード
import java.util.Arrays; import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; import java.util.PriorityQueue; import java.util.Scanner; import java.util.Set; import java.util.TreeSet; public class Main { public static class Ref<T> { T value; public void setValue(T value){ this.value = value; } public T getValue(){ return value; } } public static long gcd(long a, long b){ return b == 0 ? a : gcd(b, a % b); } public static long extcdf(long a, long b, Ref<Long> x, Ref<Long> y){ long g = a; x.setValue(1l); y.setValue(0l); if(b != 0){ g = extcdf(b, a % b, y, x); y.setValue(y.getValue() - (a / b) * x.getValue()); } return g; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); final long x = sc.nextLong(); final long y = sc.nextLong(); final long z = sc.nextLong(); final long gcd = gcd(x, y); if(z % gcd != 0){ System.out.println("mourennaihasimasenn"); }else{ Ref<Long> a = new Ref<Long>(); Ref<Long> b = new Ref<Long>(); extcdf(x, y, a, b); final StringBuilder oneloop = new StringBuilder(); final boolean one_comb = Math.abs(a.getValue()) != 0 && Math.abs(b.getValue()) != 0; if(a.getValue() >= 0){ for(int i = 0; i < Math.abs(a.getValue()); i++){ oneloop.append('c'); } for(int i = 0; i < Math.abs(a.getValue()) - 1; i++){ oneloop.append('C'); } for(int i = 0; i < Math.abs(b.getValue()); i++){ oneloop.append('w'); } for(int i = 0; i < Math.abs(b.getValue()) - 1; i++){ oneloop.append('C'); } if(one_comb){ if(b.getValue() >= 0){ oneloop.append('C'); }else{ oneloop.append('W'); } } }else{ for(int i = 0; i < Math.abs(b.getValue()); i++){ oneloop.append('w'); } for(int i = 0; i < Math.abs(b.getValue()) - 1; i++){ oneloop.append('C'); } for(int i = 0; i < Math.abs(a.getValue()); i++){ oneloop.append('c'); } for(int i = 0; i < Math.abs(a.getValue()) - 1; i++){ oneloop.append('C'); } if(one_comb){ oneloop.append('W'); } } //System.out.println(oneloop); final StringBuilder allloop = new StringBuilder(); for(int i = 0; i < (z / gcd); i++){ allloop.append(oneloop); if(i != 0){ allloop.append('C'); } } if(allloop.length() > 10000){ System.out.println("mourennaihasimasenn"); }else{ System.out.println(allloop); } } } }