링크 : https://www.acmicpc.net/problem/1316
- 문제



- 설계하기(접근방법)
객체지향적으로 코딩해보기
1. 숫자를 입력받는다
2. 전체 단어의 갯수 저장 = ans
3. 입력받은 숫자만큼 input을 받으며 메서드 반복
4. 메서드를 반복하며 그룹단어가 아닌 경우 ans에서 1씩 감소
3. 그룹단어 갯수 즉 ans 출력
그룹단어 체크 메서드 설계
매개변수 : string
조건문 :
if 현재 인덱스와 직후 인덱스가 일치하면 pass
elif 일치하지 않고, 후열의 인덱스를 순회하여 같은 단어가 있다면 -1을 return
전부 pass하면 0을 return
- 코드(출력)
def group_word_check(word):
for i in range(len(word) - 1):
if (word[i] == word[i + 1]):
pass
elif (word[i] in word[i + 2:]):
return -1
return 0
n = int(input())
ans = n
for i in range(n):
word = input()
ans += group_word_check(word)
print(ans)
- 얻어갈 부분
1. 바로 코딩하지 않고 메서드를 작성하여 코딩을 해봤는데 고려해야할 조건이 많았다.
2. 객체지향적으로 코딩할 경우, 코드를 쪼개어서 생각해야 할 것 같다고 느꼈다.
'알고리즘(백준) > 기타' 카테고리의 다른 글
| [알고리즘/] 번 : - python (0) | 2023.02.05 |
|---|---|
| [백준] 2292 번 : 벌집 - python (0) | 2023.02.05 |
| [백준] 2941 번 : 크로아티아 알파벳 - python (0) | 2023.02.05 |
| [백준] 5622 번 : 다이얼 - python (0) | 2023.01.29 |
| [백준] 2908 번 : 상수 - python (0) | 2023.01.27 |