[백준/Python] 3986번 좋은단어

2023. 1. 29. 23:50· Koala - 9기/기초 알고리즘 스터디
목차
  1. 문제분석
  2. 문제풀이

https://www.acmicpc.net/problem/3986

 

3986번: 좋은 단어

이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에

www.acmicpc.net

문제분석

A와 B로만 이루어진 문자열이 입력으로 주어진다.
입력으로 주어진 문자열이
1. A는 A끼리, B는 B끼리 선으로이어졌을 때, 선이 겹치면 안된다.
2. 문자하나는 문자 하나에만 선을 이을 수 있다.

위 조건을 만족하는 문자열이 몇개인지를 출력한다.

문제풀이

문자끼리 이어지는 경우는, 바로 직전에 같은 문자가 나타났을 때 이므로 스택을 이용하여 풀수 있다.
문자열의 문자를 하나씩 스택에 push하면서, 스택 맨위의 문자와 같은 문자가 등장했을 때 스택에서 pop하고 이어진 선의 개수인 변수를 +1 한다.
이어진 선의 개수가 문자열의 길이의 반이면 좋은단어의 개수를 +1 한다.

 

input = __import__('sys').stdin.readline

n = int(input().strip())

numGood = 0

for i in range(n):
    word = input().strip()
    stk = []
    count = 0
    
    for c in word:
        if len(stk) != 0 and c == stk[-1]:
            stk.pop()
            count += 1
        else:
            stk.append(c)
    
    if count == len(word)/2:
        numGood += 1

print(numGood)
저작자표시 (새창열림)

'Koala - 9기 > 기초 알고리즘 스터디' 카테고리의 다른 글

[BOJ/C] 2789 유학 금지  (0) 2023.01.30
[백준/Python] 10773번 제로  (1) 2023.01.30
[백준/python] 1157 단어공부  (0) 2023.01.29
[백준/Python] #11652 카드  (0) 2023.01.29
[백준/python] 14561번: 회문  (0) 2023.01.29
  1. 문제분석
  2. 문제풀이
'Koala - 9기/기초 알고리즘 스터디' 카테고리의 다른 글
  • [BOJ/C] 2789 유학 금지
  • [백준/Python] 10773번 제로
  • [백준/python] 1157 단어공부
  • [백준/Python] #11652 카드
KauKoala
KauKoala
항공대 알고리즘 동아리 Koala 🥰
Koala항공대 알고리즘 동아리 Koala 🥰
KauKoala
Koala
KauKoala
전체
오늘
어제
  • 분류 전체보기 (1887)
    • 공지 게시판 (10)
    • 정보 게시판 (8)
    • Codeforce (15)
    • acm-icpc (6)
    • Koala - 1기 (16)
    • Koala - 2기 (111)
      • Programming Contest (1)
      • A반 (20)
      • B반 (39)
      • C반 (22)
      • 기초 강의 (18)
    • Koala - 3기 (10)
      • 기초 스터디 (7)
    • Koala - 4기 (67)
    • Koala - 5기 (144)
      • 기초 알고리즘 스터디 (75)
      • 코딩테스트 준비 스터디 (68)
    • Koala - 6기 (102)
      • 기초 알고리즘 스터디 (75)
      • 코딩테스트 준비 스터디 (25)
      • 모의 테스트 스터디 (1)
    • Koala - 7기 (167)
      • 기초 알고리즘 스터디 (97)
      • 코딩테스트 준비 스터디 (68)
      • 모의 테스트 스터디 (1)
    • Koala - 8기 (44)
      • 기초 알고리즘 스터디 (32)
      • 코딩테스트 준비 스터디 (10)
      • 코드포스 버츄얼 스터디 (0)
      • 프로그래머스 LV2 스터디 (0)
    • Koala - 9기 (205)
      • 기초 알고리즘 스터디 (138)
      • 코딩테스트 준비 스터디 (64)
      • 모의테스트 준비 스터디 (1)
    • Koala - 10기 (117)
      • 기초 알고리즘 스터디 (30)
      • 코딩테스트 준비 스터디 (86)
      • 모의테스트 준비 스터디 (1)
    • Koala - 11기 (151)
      • 기초 알고리즘 스터디 (46)
      • 코딩테스트 준비 스터디 (104)
      • 모의테스트 준비 스터디 (1)
    • Koala - 12기 (86)
      • 기초 알고리즘 스터디 (31)
      • 코딩테스트 준비 스터디 (55)
    • Koala - 13기 (119)
      • 기초 알고리즘 스터디 (52)
      • 코딩테스트 준비 스터디 (67)
    • Koala - 14기 (116)
      • 기초 알고리즘 스터디 (39)
      • 코딩테스트 준비 스터디 (77)
    • Koala - 15기 (138)
      • 기초 알고리즘 스터디 (73)
      • 코딩테스트 준비 스터디 (65)
    • Koala - 16기 (47)
      • 코딩테스트 기초 스터디 (16)
      • 코딩테스트 심화 스터디 (31)
    • Koala - 17기 (62)
      • 코딩테스트 기초 스터디 (15)
      • 코딩테스트 심화 스터디 (47)
    • Koala - 18기 (31)
      • 코딩테스트 기초 스터디 (11)
      • 코딩테스트 심화 스터디 (20)
    • Koala - 19기 (41)
      • 코딩테스트 기초 스터디 (7)
      • 코딩테스트 심화 스터디 (34)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 🐨항공대 알고리즘 학회 Koala 3기 모집
  • 🐨항공대 알고리즘 학회 Koala 2기 모집
  • 소모임 소개

인기 글

태그

  • dp
  • BOJ
  • 파이썬
  • 백준
  • dfs
  • C++
  • 백트래킹
  • BFS

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.3.0
KauKoala
[백준/Python] 3986번 좋은단어
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.