結果

問題 No.438 Cwwプログラミング入門
ユーザー ciel
提出日時 2016-11-02 22:44:38
言語 Ruby
(3.4.1)
結果
AC  
実行時間 103 ms / 2,000 ms
コード長 574 bytes
コンパイル時間 45 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 12,416 KB
最終ジャッジ日時 2024-12-26 08:39:30
合計ジャッジ時間 13,455 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 98
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

#!/usr/bin/ruby
def f(c,n)
	n==0 ? '' : n>0 ? c*n : c*-n
end
def g(n)
	n==0 ? '' : n>0 ? 'C'.upcase*(n-1) : 'W'.upcase*(-n-1)
end

x,y,z=gets.split.map &:to_i
if z==0
	puts :wwW
elsif y==0
	if x==0||z%x>0
		puts :NO
	else
		s='c'*(z/x)+'C'*(z/x-1)
		puts s.size>10000 ? :NO : s
	end
else
	if (-5000..5000).each{|a|
		b,r=(z-a*x).divmod(y)
		next if r>0||2*a.abs+2*b.abs-1>10000
		if a>0
			puts f('w',b)+f('c',a)+g(a)+g(b)+(a==0||b==0 ? '' : b<0 ? 'W' : 'C')
		else
			puts f('c',a)+f('w',b)+g(b)+g(a)+(a==0||b==0 ? '' : a<0 ? 'W' : 'C')
		end
		break
	}
		puts :NO
	end
end
0