結果

問題 No.232 めぐるはめぐる (2)
ユーザー kou6839
提出日時 2015-06-27 00:17:11
言語 Java
(openjdk 23)
結果
WA  
実行時間 -
コード長 1,333 bytes
コンパイル時間 2,265 ms
コンパイル使用メモリ 78,252 KB
実行使用メモリ 506,196 KB
最終ジャッジ日時 2024-07-07 19:33:07
合計ジャッジ時間 11,088 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 13 WA * 5 TLE * 4
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Scanner;


public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int T = sc.nextInt();
		int A = sc.nextInt();
		int B = sc.nextInt();

		int need = Math.max(A, B);
		if(T < need ){
			System.out.println("NO");
			return;
		}
		if(T == need+1){
			if(A==0 || B==0){
				System.out.println("NO");
			}else{
				System.out.println("YES");
				StringBuilder sb = new StringBuilder();
				sb.append(">\n");
				sb.append("^\n");
				for(int i=0;i<Math.min(A, B)-1;i++) sb.append("^>\n");
				for(int i=0;i<A-1;i++){
					sb.append("^\n");
				}
				for(int i=0;i<B-1;i++){
					sb.append(">\n");
				}
				System.out.print(sb);
				return;
			}
		}
		StringBuilder sb = new StringBuilder();
		System.out.println("YES");
		for(int i=0;i<Math.min(A, B);i++){
			sb.append("^>\n");
		}
		int rest = T - B;
		if(rest==0) {
			System.out.print(sb);
			return;
		}
		if(A>B){
			for(int i=0;i<A-B;i++){
				sb.append("^\n");
			}
		}else{
			for(int i=0;i<B-A;i++){
				sb.append(">\n");
			}
		}
		while(true){
			if(rest == 2){
				sb.append(">\n");
				sb.append("<\n");
				break;
			}
			if(rest == 3){
				sb.append("^>\n");
				sb.append("<\n");
				sb.append("v\n");
				break;
			}
			sb.append(">\n");
			sb.append("<\n");
			rest-=2;
		}
		System.out.print(sb);
	}
}
0