알고리즘

5525-백준-IOIOI

2023. 3. 4. 22:01
목차
  1. 1. 문제 출처
  2. 2. 풀이

1. 문제 출처

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

 

5525번: IOIOI

N+1개의 I와 N개의 O로 이루어져 있으면, I와 O이 교대로 나오는 문자열을 PN이라고 한다. P1 IOI P2 IOIOI P3 IOIOIOI PN IOIOI...OI (O가 N개) I와 O로만 이루어진 문자열 S와 정수 N이 주어졌을 때, S안에 PN이 몇

www.acmicpc.net

2. 풀이

그냥 문제대로 구현해 본다.

# 입력
n = int(input())
length = int(input())
S = input()
p = "IO"*n+"I"

idx = 0
count = 0
# I일 때 p와 비교해서 똑같으면 count+=1
while idx < length:
    if S[idx] == "I":
        if idx + len(p) <= length:
            if p == S[idx:idx+len(p)]:
                count +=1
        else:
            break
        
    idx+=1
print(count)

이렇게 하면 실행시간이 길기 때문에 50점이 나온다

#입력
n = int(input())
length = int(input())
S = input()

idx = 0
count = 0
result = 0
# IOI 가 n만큼 반복될 때
while idx < length:
    if S[idx:idx+3] == "IOI":
        count+=1
        idx +=2
        if count == n :
        # result를 1씩 추가한다.
            count-=1
            result +=1
    else:
        count = 0
        idx +=1


print(result)

'알고리즘' 카테고리의 다른 글

9324-백준-진짜 메세지  (0) 2023.03.10
2002-백준-추월  (0) 2023.03.09
3048-백준-개미  (0) 2023.03.04
9322-백준-철벽 보안 알고리즘  (0) 2023.03.02
2941-백준-크로아티아 알파벳  (0) 2023.02.27
  • 1. 문제 출처
  • 2. 풀이
'알고리즘' 카테고리의 다른 글
  • 9324-백준-진짜 메세지
  • 2002-백준-추월
  • 3048-백준-개미
  • 9322-백준-철벽 보안 알고리즘
easysheep
easysheep
easysheep
나의 개발자 일기
easysheep
전체
오늘
어제
  • 분류 전체보기 (95)
    • 파이썬 (7)
      • 자료형 (0)
      • matplotlib (2)
      • Tensorflow (1)
      • Selenium (1)
      • Numpy (2)
      • Pandas (1)
    • 장난감 프로젝트 (3)
    • AI_수학 (0)
      • 통계 (0)
    • 알고리즘 (63)
      • 브루트 포스 (3)
      • 그리드 알고리즘 (5)
      • 너비 우선 탐색(bfs) (12)
      • 깊이 우선 탐색(DFS) (1)
      • 최단 경로 구하기(플로이드 워셜) (1)
      • 동적 계획법(Dynamic Programming) (8)
      • Dijkstra algorithm(데이크스트라 알.. (6)
    • Backend (1)
      • Django (1)
    • 딥러닝 (1)
      • Regression(회귀) (0)
    • 머신러닝 (3)
      • Daycon (1)
      • 직접 구현 (1)
    • AWS (3)
    • DB (2)
      • MongoDB (2)
    • kubernetes (3)
    • Docker (4)
    • Stress Test Toll (0)
      • Jmeter (0)
      • nGrinder (0)
    • Ubuntu (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • error: version in "./docker-compose.yaml" is unsupported.
  • BFS
  • matplotlib
  • 데이크스트라
  • 헬름 설치
  • Docker
  • 문자열
  • Cannot stat file /proc/528/fd/0: Permission denied
  • Bind Mounts
  • 우분투에 헬름 설치
  • mysql
  • 2*n 타일링
  • grafana
  • 알고리즘
  • 파이썬
  • 백준
  • ubuntu
  • validate service connection
  • Mac
  • helm
  • gradio
  • dynamic programming
  • Numpy
  • Python
  • heap
  • 머신 러닝
  • ML
  • aws
  • error
  • 너비 우선 탐색

최근 댓글

최근 글

hELLO · Designed By 정상우.
easysheep
5525-백준-IOIOI
상단으로

티스토리툴바

단축키

내 블로그

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

블로그 게시글

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

모든 영역

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

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