01-08 08:57
Recent Posts
Recent Comments
๊ด€๋ฆฌ ๋ฉ”๋‰ด

miinsun

[BAEKJOON] ๋ฐฑ์ค€ ๊ตฌํ˜„ 1316 :: ๊ทธ๋ฃน ๋‹จ์–ด ์ฒด์ปค ๋ณธ๋ฌธ

Algorithm/Baekjoon

[BAEKJOON] ๋ฐฑ์ค€ ๊ตฌํ˜„ 1316 :: ๊ทธ๋ฃน ๋‹จ์–ด ์ฒด์ปค

miinsun 2022. 6. 10. 01:57

๐Ÿ’ฌ  ๋ฌธ์ œ ์„ค๋ช…

๊ทธ๋ฃน ๋‹จ์–ด๋ž€ ๋‹จ์–ด์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์ž์— ๋Œ€ํ•ด์„œ, ๊ฐ ๋ฌธ์ž๊ฐ€ ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒฝ์šฐ๋งŒ์„ ๋งํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด, ccazzzzbb๋Š” c, a, z, b๊ฐ€ ๋ชจ๋‘ ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๊ณ , kin๋„ k, i, n์ด ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฃน ๋‹จ์–ด์ด์ง€๋งŒ, aabbbccb๋Š” b๊ฐ€ ๋–จ์–ด์ ธ์„œ ๋‚˜ํƒ€๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฃน ๋‹จ์–ด๊ฐ€ ์•„๋‹ˆ๋‹ค.

๋‹จ์–ด N๊ฐœ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ๊ทธ๋ฃน ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

 

๐Ÿ”จ  ์ž…์ถœ๋ ฅ ์˜ˆ

์ž…๋ ฅ 

  • ์ฒซ์งธ ์ค„์— ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜ N์ด ๋“ค์–ด์˜จ๋‹ค. N์€ 100๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.
  • ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๋‹จ์–ด๊ฐ€ ๋“ค์–ด์˜จ๋‹ค.
  • ๋‹จ์–ด๋Š” ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ๋˜์–ด์žˆ๊ณ  ์ค‘๋ณต๋˜์ง€ ์•Š์œผ๋ฉฐ, ๊ธธ์ด๋Š” ์ตœ๋Œ€ 100์ด๋‹ค.

 

์ถœ๋ ฅ

  •  ์ฒซ์งธ ์ค„์— ๊ทธ๋ฃน ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

์˜ˆ์ œ ์ž…๋ ฅ 1)

3
happy
new
year

 

์˜ˆ์ œ ์ถœ๋ ฅ 1)

3

 

์˜ˆ์ œ ์ž…๋ ฅ 2)

4
aba
abab
abcabc
a

 

์˜ˆ์ œ ์ถœ๋ ฅ 2)

1

 

์˜ˆ์ œ ์ž…๋ ฅ 3)

5
ab
aa
aca
ba
bb

 

์˜ˆ์ œ ์ถœ๋ ฅ 3)

4

 

์˜ˆ์ œ ์ž…๋ ฅ 4)

2
yzyzy
zyzyz

 

์˜ˆ์ œ ์ถœ๋ ฅ 4)

0

 

โ€‹

๐Ÿ’ป  Main.java

  • ์ƒ๊ฐ๋ณด๋‹ค ํ’€์ด๊ฐ€ ์˜ค๋ž˜ ๊ฑธ๋ ธ๋˜ ๊ตฌํ˜„๋ฌธ์ œ์ด๋‹ค
  • s์˜ ๊ธธ์ด๊ฐ€ 2์ดํ•˜ ์ผ๋•Œ๋Š” ๋ฌด์กฐ๊ฑด ๊ทธ๋ฃน๋‹จ์–ด์— ์†ํ•œ๋‹ค. (ex - "a", "aa", "ab" )
  • ๊ทธ์™ธ์—๋Š”, ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 2๋ถ€ํ„ฐ ๋๊นŒ์ง€ ๊ฒ€์‚ฌ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉฐ
    • ๋ฌธ์ž์—ด์— ํฌํ•จ๋ผ์žˆ๊ณ 
    • ์—ฐ๋‹ฌ์•„ ๋‚˜์˜ค์ง€ ์•Š๋Š” ์ผ€์ด์Šค๋ฅผ ์ฐพ์•„ ๊ทธ๋ฃน ๋‹จ์–ด ๊ฒ€์‚ฌ๋ฅผ ์ง„ํ–‰ํ•ด์ค€๋‹ค.
/* ๋ฐฑ์ค€ - 1316 :: ๊ทธ๋ฃน ๋‹จ์–ด ์ฒด์ปค */
import java.util.*;
import java.io.*;

public class Main {

	public static void main(String[] args) throws IOException{
		Scanner sc = new Scanner (System.in);
		int n = sc.nextInt();	// ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜
		
		int answer = 0;
		for(int i = 0; i < n; i++) {
			String s = sc.next();
			
			boolean isGroupWord = true;
			if(s.length() > 2) {	// ๋ฌธ์ž๊ฐ€ 2๊ฐœ ์ด์ƒ์ผ ๋•Œ๋งŒ ๊ทธ๋ฃน๋‹จ์–ด ๊ฒ€์‚ฌ์ง„ํ–‰
				String tmp = s.substring(0, 2);	// ๊ธฐ์กด ๋‹จ์–ด์™€ ๋น„๊ตํ•˜๊ธฐ ์œ„ํ•œ ๋ฌธ์ž์—ด, 2๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž๋ฅผ ๊ฐ–๋Š”๋‹ค
				for(int j = 2; j < s.length(); j++) {
					// ๋ฌธ์ž์—ด์— ํฌํ•จ๋ผ์žˆ์ง€๋งŒ, ์—ฐ์†๋˜์ง€ ์•Š์œผ๋ฉด ๊ทธ๋ฃน๋‹จ์–ด๋ฅผ ๊ฒ€์‚ฌ
					if(tmp.contains(String.valueOf(s.charAt(j))) 
							&& tmp.charAt(j - 1) != s.charAt(j)) {
						isGroupWord = false;
						break;
					}
					// ๋น„๊ต ๋ฌธ์ž์—ด์„ ์ฆ๊ฐ€ํ•ด์ค€๋‹ค
					tmp += s.charAt(j);
				}
			}
			
			if(isGroupWord)
				answer++;
		}
		
		System.out.println(answer);
		
        sc.close();
	}
}
Comments