[SWEA] #1213 - String

2022. 3. 2. 12:46
728x90
반응형

※ 문제에 대한 저작권은 SW Expert Academy에 있습니다.

💡 출처


https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14P0c6AAUCFAYi 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

💡 문제


[설명]

주어지는 영어 문장에서 특정한 문자열의 개수를 반환하는 프로그램을 작성하여라.

Starteatingwellwiththeseeighttipsforhealthyeating, whichcoverthebasicsofahealthydietandgoodnutrition.

위 문장에서 ti를 검색하면, 답은 4이다.

 

💡 아이디어


split()을 이용하면 특정 문자열을 제외한 문자열 배열을 얻을 수 있다.

이를 이용해 (원문의 길이 - split(특정 문자열)을 한 길이) / 특정 문자열의 길이를 하면 특정 문자열의 개수를 얻을 수 있다.

 

💡 소스코드


import java.io.FileInputStream;
import java.util.Scanner;

public class P_1213 {

	public static void main(String[] args) throws Exception {
		System.setIn(new FileInputStream("input.txt"));
		Scanner sc = new Scanner(System.in);
		int T;

		for (int TC = 1; TC <= 10; TC++) {
			T = sc.nextInt();

			String Token = sc.next();
			String Str = sc.next();
			String[] SplitByToken = Str.split(Token);
			int Sum = 0;
			
			for(String s : SplitByToken)
				Sum += s.length();
			
			System.out.println("#" + TC + " " + ((Str.length() - Sum) / Token.length()));
		}
	}
}

 

💡 결과


 

728x90
반응형

'Algorithm > SW Expert Academy' 카테고리의 다른 글

[SWEA] #1260 - 화학물질2  (0) 2022.03.02
[SWEA] #1215 - 회문1  (0) 2022.03.02
[SWEA] #1210 - Ladder1  (0) 2022.03.02
[SWEA] #1259 - 금속막대  (0) 2022.02.25
[SWEA] #1209 - Sum  (0) 2022.02.25

BELATED ARTICLES

more