Submission #6579975
Source Code Expand
Copy
import java.io.*; import java.lang.reflect.Array; import java.util.*; import java.util.Map.Entry; import java.util.function.Function; import java.util.stream.Collectors; @SuppressWarnings("unused") public class Main { FastScanner in = new FastScanner(System.in); PrintWriter out = new PrintWriter(System.out); final int MOD = (int)1e9+7; void printlnYN(boolean b){out.println((b ? "YES" : "NO"));} //System.out.println();はつかわない!! void solve() throws Exception{ String S = in.nextStr(), T = in.nextStr(); boolean[] isAll = new boolean[2]; Arrays.fill(isAll, true); for(int i = 0; i < S.length()-1; i++){ if(S.charAt(i) != S.charAt(i+1)){ isAll[0] = false; break; } } for(int i = 0; i < T.length()-1; i++){ if(T.charAt(i) != T.charAt(i+1)){ isAll[1] = false; break; } } if((isAll[0] && isAll[1] && S.charAt(0) == T.charAt(0))){ out.println("-1"); return; } if(S.length() <= T.length()){ String s1 = new String(S), t1 = new String(T); while(s1.length() < t1.length()) s1 += s1; if(t1.equals(s1.substring(0, t1.length()))){ out.println("-1"); return; } } int ans = 0; boolean isOk = false; int index = 0; int len = 0, cnt = 0; S += S; ArrayList<Integer> list = new ArrayList<>(); for(int i = 0; i < S.length(); i++){ if(i >= S.length()) break; if(S.charAt(i) == T.charAt(index)){ index++; if(index == T.length()){ cnt++; index = 0; } }else{ ans = Math.max(ans, cnt); cnt = 0; index = 0; } } out.println(ans); } public static void main(String[] args) throws Exception { new Main().m(); } void m() throws Exception { solve(); out.flush(); } class FastScanner { Reader input; FastScanner() {this(System.in);} FastScanner(InputStream stream) {this.input = new BufferedReader(new InputStreamReader(stream));} int nextInt() {return (int) nextLong();} long nextLong() { try { int sign = 1; int b = input.read(); while ((b < '0' || '9' < b) && b != '-' && b != '+') { b = input.read(); } if (b == '-') { sign = -1; b = input.read(); } else if (b == '+') { b = input.read(); } long ret = b - '0'; while (true) { b = input.read(); if (b < '0' || '9' < b) return ret * sign; ret *= 10; ret += b - '0'; } } catch (IOException e) { e.printStackTrace(); return -1; } } double nextDouble() { try { double sign = 1; int b = input.read(); while ((b < '0' || '9' < b) && b != '-' && b != '+') { b = input.read(); } if (b == '-') { sign = -1; b = input.read(); } else if (b == '+') { b = input.read(); } double ret = b - '0'; while (true) { b = input.read(); if (b < '0' || '9' < b) break; ret *= 10; ret += b - '0'; } if (b != '.') return sign * ret; double div = 1; b = input.read(); while ('0' <= b && b <= '9') { ret *= 10; ret += b - '0'; div *= 10; b = input.read(); } return sign * ret / div; } catch (IOException e) { e.printStackTrace(); return Double.NaN; } } char nextChar() { try { int b = input.read(); while (Character.isWhitespace(b)) { b = input.read(); } return (char) b; } catch (IOException e) { e.printStackTrace(); return 0; } } String nextStr() { try { StringBuilder sb = new StringBuilder(); int b = input.read(); while (Character.isWhitespace(b)) { b = input.read(); } while (b != -1 && !Character.isWhitespace(b)) { sb.append((char) b); b = input.read(); } return sb.toString(); } catch (IOException e) { e.printStackTrace(); return ""; } } public int[] nextIntArray(int n) { int[] res = new int[n]; for (int i = 0; i < n; i++) { res[i] = nextInt(); } return res; } public int[] nextIntArrayDec(int n) { int[] res = new int[n]; for (int i = 0; i < n; i++) { res[i] = nextInt() - 1; } return res; } public int[] nextIntArray1Index(int n) { int[] res = new int[n + 1]; for (int i = 0; i < n; i++) { res[i + 1] = nextInt(); } return res; } public long[] nextLongArray(int n) { long[] res = new long[n]; for (int i = 0; i < n; i++) { res[i] = nextLong(); } return res; } public long[] nextLongArrayDec(int n) { long[] res = new long[n]; for (int i = 0; i < n; i++) { res[i] = nextLong() - 1; } return res; } public long[] nextLongArray1Index(int n) { long[] res = new long[n + 1]; for (int i = 0; i < n; i++) { res[i + 1] = nextLong(); } return res; } public double[] nextDoubleArray(int n) { double[] res = new double[n]; for (int i = 0; i < n; i++) { res[i] = nextDouble(); } return res; } } } /* end Main */
Submission Info
Submission Time | |
---|---|
Task | F - Strings of Eternity |
User | Oland |
Language | Java8 (OpenJDK 1.8.0) |
Score | 0 |
Code Size | 5163 Byte |
Status | WA |
Exec Time | 328 ms |
Memory | 43416 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 600 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | a01, a02, a03 |
All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32, b33, b34, b35, b36, b37, b38, b39, b40, b41, b42, b43, b44, b45, b46, b47, b48, b49, b50, b51, b52, b53, b54, b55, b56, b57, b58, b59, b60, b61, b62, b63, b64, b65, b66, b67, b68, b69, b70 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
a01 | AC | 70 ms | 22484 KB |
a02 | AC | 70 ms | 20692 KB |
a03 | AC | 69 ms | 19284 KB |
b04 | AC | 69 ms | 18644 KB |
b05 | AC | 69 ms | 19284 KB |
b06 | AC | 68 ms | 19156 KB |
b07 | AC | 69 ms | 21076 KB |
b08 | AC | 69 ms | 18260 KB |
b09 | AC | 71 ms | 21588 KB |
b10 | WA | 67 ms | 17620 KB |
b11 | WA | 68 ms | 18772 KB |
b12 | AC | 178 ms | 27928 KB |
b13 | AC | 180 ms | 27032 KB |
b14 | AC | 180 ms | 28952 KB |
b15 | AC | 149 ms | 23536 KB |
b16 | AC | 149 ms | 21944 KB |
b17 | AC | 202 ms | 33680 KB |
b18 | AC | 215 ms | 34840 KB |
b19 | AC | 176 ms | 29720 KB |
b20 | WA | 207 ms | 33688 KB |
b21 | AC | 217 ms | 39960 KB |
b22 | AC | 207 ms | 38296 KB |
b23 | WA | 191 ms | 42008 KB |
b24 | WA | 179 ms | 29080 KB |
b25 | WA | 188 ms | 35864 KB |
b26 | AC | 171 ms | 28184 KB |
b27 | AC | 197 ms | 42008 KB |
b28 | WA | 190 ms | 42000 KB |
b29 | WA | 192 ms | 38680 KB |
b30 | AC | 198 ms | 43416 KB |
b31 | AC | 194 ms | 40080 KB |
b32 | AC | 177 ms | 33816 KB |
b33 | WA | 192 ms | 33816 KB |
b34 | AC | 192 ms | 34968 KB |
b35 | AC | 188 ms | 40072 KB |
b36 | AC | 180 ms | 30104 KB |
b37 | AC | 199 ms | 37912 KB |
b38 | WA | 187 ms | 35736 KB |
b39 | WA | 184 ms | 39192 KB |
b40 | WA | 193 ms | 33048 KB |
b41 | WA | 208 ms | 33176 KB |
b42 | WA | 208 ms | 41880 KB |
b43 | WA | 190 ms | 40080 KB |
b44 | AC | 211 ms | 32792 KB |
b45 | AC | 194 ms | 42008 KB |
b46 | AC | 185 ms | 41496 KB |
b47 | WA | 179 ms | 35864 KB |
b48 | WA | 184 ms | 31640 KB |
b49 | AC | 195 ms | 35224 KB |
b50 | AC | 328 ms | 32152 KB |
b51 | WA | 191 ms | 42008 KB |
b52 | WA | 199 ms | 35352 KB |
b53 | AC | 195 ms | 39704 KB |
b54 | WA | 190 ms | 33688 KB |
b55 | WA | 189 ms | 37136 KB |
b56 | WA | 159 ms | 32536 KB |
b57 | WA | 169 ms | 29976 KB |
b58 | AC | 125 ms | 23508 KB |
b59 | AC | 86 ms | 18260 KB |
b60 | AC | 132 ms | 21844 KB |
b61 | WA | 103 ms | 17876 KB |
b62 | AC | 113 ms | 20180 KB |
b63 | WA | 156 ms | 33176 KB |
b64 | WA | 185 ms | 33432 KB |
b65 | WA | 180 ms | 35224 KB |
b66 | WA | 184 ms | 39320 KB |
b67 | AC | 196 ms | 41496 KB |
b68 | AC | 208 ms | 33048 KB |
b69 | AC | 184 ms | 33304 KB |
b70 | AC | 189 ms | 40088 KB |