반응형
문제를 너무 쉽게 생각했더니 시간초과
범위를 보니 무식하게 풀면 안되겠음 -> 순열도 안될듯
좀 더 생각해보자
package 백준;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main_1593 {
public static void main(String[] args) throws IOException {
// W: cAda
// g: 4
// S:AbrAcadAbRa
// gS: 11
// Acad
// cadA
// 다른 방법을 생각해야함
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int wSize = Integer.parseInt(st.nextToken());
int sSize = Integer.parseInt(st.nextToken());
int cnt = 0;
String w = br.readLine();
char[] wC = w.toCharArray();
String s = br.readLine();
char[] sC = s.toCharArray();
char[] tmp = new char[w.length()];
// 문자열 정렬
Arrays.sort(wC);
int i = 0;
int j = 0;
while (j < sC.length) {
int k = 0;
for (j = i; j < i + wC.length; j++) {
tmp[k] = sC[j];
k++;
}
Arrays.sort(tmp);
if (Arrays.equals(tmp, wC)) {
cnt += 1;
}
i += 1;
}
System.out.println(cnt);
}
}
💡 두 배열의 내용이 같은지 비교
if (Arrays.equals(tmp1, tmp2))
반응형
'Algorithm' 카테고리의 다른 글
[백준] 2630: 색종이 만들기(분할정복) (0) | 2022.10.03 |
---|---|
[백준] 10814: 나이순 정렬(Java) (0) | 2022.10.03 |
[SWEA]1249: 보급로 D4(Java) (0) | 2022.10.02 |
[프로그래머스] 완주하지 못한 선수(Java) (0) | 2022.10.01 |
[백준] 2879: 수학숙제(Java) (0) | 2022.10.01 |