Submission #337883
Source Code Expand
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.LinkedList; import java.util.PriorityQueue; import java.util.Set; import java.util.SortedMap; import java.util.StringTokenizer; import java.util.TreeMap; import java.util.TreeSet; public class Main { public static boolean dfs(final int n, final int deep, final int using, final int index, String[] inputs, boolean[] used){ if(deep >= n){ return true; } for(int next = 0; next < n; next++){ final int next_index = index + 1; if(used[next]){ continue; } //System.out.println(deep + " : " + inputs[using] + "[" + index + "] " + " -> " + inputs[next] + "[" + next_index + "]"); if(inputs[next].length() <= next_index){ continue; }else if(inputs[next].charAt(next_index) != inputs[using].charAt(index)){ continue; } used[next] = true; if(dfs(n, deep + 1, next, next_index, inputs, used)){ return true; } used[next] = false; } return false; } public static void main(String[] args) throws IOException { Scanner sc = new Scanner(System.in); final int n = sc.nextInt(); String[] inputs = new String[n]; for(int i = 0; i < n; i++){ inputs[i] = sc.next(); } boolean[] used = new boolean[n]; for(int last = 0; last < n; last++){ final int size = inputs[last].length(); used[last] = true; for(int index = 0; index < size; index++){ if(dfs(n, 1, last, index, inputs, used)){ System.out.println("YES"); return; } } used[last] = false; } System.out.println("NO"); } public static class Scanner { private BufferedReader br; private StringTokenizer tok; public Scanner(InputStream is) throws IOException { br = new BufferedReader(new InputStreamReader(is)); } private void getLine() throws IOException { while (!hasNext()) { tok = new StringTokenizer(br.readLine()); } } private boolean hasNext() { return tok != null && tok.hasMoreTokens(); } public String next() throws IOException { getLine(); return tok.nextToken(); } public int nextInt() throws IOException { return Integer.parseInt(next()); } public long nextLong() throws IOException { return Long.parseLong(next()); } public void close() throws IOException { br.close(); } } }
Submission Info
Submission Time | |
---|---|
Task | B - コメント |
User | mondatto |
Language | Java (OpenJDK 1.7.0) |
Score | 0 |
Code Size | 2578 Byte |
Status | TLE |
Exec Time | 2042 ms |
Memory | 24804 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 30 | 0 / 60 | ||||||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt |
Subtask2 | subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 316 ms | 20640 KB |
sample_02.txt | AC | 313 ms | 20588 KB |
subtask1_01.txt | AC | 308 ms | 20580 KB |
subtask1_02.txt | TLE | 2040 ms | 22360 KB |
subtask1_03.txt | TLE | 2039 ms | 22240 KB |
subtask1_04.txt | TLE | 2038 ms | 22276 KB |
subtask1_05.txt | AC | 286 ms | 20540 KB |
subtask1_06.txt | AC | 313 ms | 22104 KB |
subtask1_07.txt | AC | 297 ms | 20984 KB |
subtask1_08.txt | AC | 304 ms | 21508 KB |
subtask1_09.txt | AC | 287 ms | 20588 KB |
subtask1_10.txt | AC | 1873 ms | 22016 KB |
subtask1_11.txt | TLE | 2040 ms | 22292 KB |
subtask1_12.txt | AC | 323 ms | 21988 KB |
subtask1_13.txt | TLE | 2039 ms | 22416 KB |
subtask1_14.txt | AC | 296 ms | 20520 KB |
subtask1_15.txt | AC | 324 ms | 21820 KB |
subtask1_16.txt | TLE | 2040 ms | 22332 KB |
subtask2_01.txt | TLE | 2039 ms | 24516 KB |
subtask2_02.txt | TLE | 2039 ms | 24140 KB |
subtask2_03.txt | AC | 339 ms | 23372 KB |
subtask2_04.txt | AC | 1547 ms | 24040 KB |
subtask2_05.txt | AC | 335 ms | 23700 KB |
subtask2_06.txt | AC | 380 ms | 24544 KB |
subtask2_07.txt | AC | 380 ms | 24412 KB |
subtask2_08.txt | TLE | 2039 ms | 24212 KB |
subtask2_09.txt | TLE | 2038 ms | 24256 KB |
subtask2_10.txt | AC | 620 ms | 24156 KB |
subtask2_11.txt | TLE | 2039 ms | 24232 KB |
subtask2_12.txt | TLE | 2038 ms | 24164 KB |
subtask2_13.txt | TLE | 2039 ms | 24664 KB |
subtask2_14.txt | TLE | 2039 ms | 24328 KB |
subtask2_15.txt | TLE | 2039 ms | 24588 KB |
subtask2_16.txt | TLE | 2038 ms | 24804 KB |
subtask2_17.txt | AC | 1390 ms | 24136 KB |
subtask2_18.txt | TLE | 2037 ms | 24592 KB |
subtask2_19.txt | TLE | 2042 ms | 24680 KB |
subtask2_20.txt | TLE | 2038 ms | 24116 KB |
subtask2_21.txt | TLE | 2039 ms | 24484 KB |
subtask2_22.txt | TLE | 2039 ms | 24456 KB |
subtask2_23.txt | TLE | 2039 ms | 24308 KB |
subtask2_24.txt | TLE | 2038 ms | 24272 KB |
subtask2_25.txt | TLE | 2039 ms | 24588 KB |
subtask2_26.txt | TLE | 2039 ms | 24644 KB |
subtask2_27.txt | TLE | 2038 ms | 24248 KB |
subtask2_28.txt | TLE | 2041 ms | 24468 KB |