걸음마부터 달리기
SWEA 1213. [S/W 문제해결 기본] 3일차 - String 본문
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
import java.util.*;
import java.io.*;
class Main {
static int T=10;
static int[][] map;
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//T = Integer.parseInt(br.readLine());
for (int l = 0; l < T; l++) {
br.readLine();
String find = br.readLine();
String arr = br.readLine();
int count=0;
for(int i=0; i<=arr.length()- find.length(); i++) {
if(arr.substring(i,i+find.length()).equals(find)) count++;
}
System.out.printf("#%d %d\n",l+1,count);
}
}
}
이중 for문 돌면서 앞에서부터 비교 후 , 맞다면 거기서부터 쫙 비교하는 좀 짜증나는 코드를 쓸 순 있지만....
위의 코드처럼 최대한 간단하고 빠르게 풀기를 연습하고 있는 상황에서는 substring을 쓸 수도 있다.
간단하게 하나씩 완탐하면서 부분수열을 뽑아서 찾을려고 하는거랑 같은지 확인하면 된다.
시간은 좀 더 걸릴지라도 보기는 좋으니...