結果
| 問題 | No.653 E869120 and Lucky Numbers | 
| コンテスト | |
| ユーザー |  Tsukasa_Type | 
| 提出日時 | 2018-02-24 00:07:49 | 
| 言語 | Java (openjdk 23) | 
| 結果 | 
                                WA
                                 
                            (最新) 
                                AC
                                 
                            (最初) | 
| 実行時間 | - | 
| コード長 | 1,722 bytes | 
| コンパイル時間 | 2,348 ms | 
| コンパイル使用メモリ | 77,200 KB | 
| 実行使用メモリ | 55,784 KB | 
| 最終ジャッジ日時 | 2024-12-24 10:50:23 | 
| 合計ジャッジ時間 | 7,672 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 27 WA * 4 | 
ソースコード
import java.util.*;
public class Main {
	static Scanner sc = new Scanner(System.in);
	public static void main(String[] args) {
		String s = sc.next();
		System.out.println(judge(s)==true?"Yes":"No");
	}
	
	static boolean judge (String s) {
		
		if (s.length()==1) {
			return false;
		}
		else if (s.length()==2) {
			if (s.equals("12")==false && s.equals("13")==false && s.equals("14")==false) {
				if (s.equals("72")==false && s.equals("73")==false && s.equals("74")==false) {
					if (s.equals("82")==false && s.equals("83")==false && s.equals("84")==false) {
						return false;
					}
				}
			}
		}
		else {
			char c = s.charAt(0);
			if (c!='1' && c!='6' && c!='7' && c!='8') {return false;}
			c = s.charAt(s.length()-1);
			if (c!='2' && c!='3' && c!='4') {return false;}
			
			//先頭が1の場合
			if (s.charAt(0)=='1') {
				for (int i=1; i<s.length()-1; i++) {
					c = s.charAt(i);
					if (c!='3' && c!='4' && c!='5') {return false;}
				}
				return true;
			}
			//先頭が6か7か8の場合
			else if (s.charAt(0)=='6' || s.charAt(0)=='7' || s.charAt(0)=='8') {
				s = s.substring(0,s.length()-1);
				s = s.replaceAll("[345]","");
				
				if (s.charAt(s.length()-1)=='6') {return false;}
				
				String[] ar = {"1","2","3","4","5","9","0"};
				for (int i=0; i<ar.length; i++) {
					if (s.contains(ar[i])) {return false;}
				}
				//もし8が含まれているならそれはただ一つであり一番右側か?
				
				if (s.contains("8")) {
					for (int i=0; i<s.length(); i++) {
						if (i!=s.length()-1) {
							if (s.charAt(i)=='8') {return false;}
						}
					}
				}
				s = s.replaceAll("[678]","");
				if (s.equals("")==false) {return false;}
			}
		}
		return true;
	}
}
            
            
            
        