백준 : FizzBuzz - 28702

2025. 10. 10. 04:44·알고리즘
반응형

import sys
input = sys.stdin.readline

def fizzbuzz(i):
    if i % 3 == 0 and i % 5 == 0:
        print('FizzBuzz')
    elif i % 3 == 0:
        print('Fizz')
    elif i % 5 == 0:
        print('Buzz')
    else:
        print(i)

# 이렇게 놓는 이유는 i가 1이라면 3만큼 더하면 되고, 2라면 2, 3이라면 1만큼 더하면 된다.
# 그렇기 때문에 반대로 놓아야 다음을 예측이 가능하다.
for i in range(3, 0, -1):
    n = input().strip()
    if n.isdigit():
        fizzbuzz(int(n)+i)
        break

출력

연속으로 출력된 세 개의 문자열 다음에 올 문자열을 출력하세요. 여러 문자열이 올 수 있는 경우, 아무거나 하나 출력하세요.

예제 입력 1 

Fizz
Buzz
11

예제 출력 1 

Fizz

예제 입력 2 

980803
980804
FizzBuzz

예제 출력 2 

980806

 

최근 문제와 비슷한 문제이지만 조건이 추가가 되었다.

 

우선 입력값은 항상 3개씩 받기 때문에 이를 바탕으로 다음 숫자를 예측해야 한다. 

import sys
input = sys.stdin.readline

def fizzbuzz(i):
    if i % 3 == 0 and i % 5 == 0:
        print('FizzBuzz')
    elif i % 3 == 0:
        print('Fizz')
    elif i % 5 == 0:
        print('Buzz')
    else:
        print(i)

일단 이건 기존 확인하는 조건과 동일하다. 이때 추가적으로 생각할 게 있는데 바로 아까 말했던 순서이다.

초기에는 이러한 방식으로 문제를 풀지 못했다. 원래는 3개의 숫자를 각각 확인하여 예측하기 위해선 어떻게 해야할지 고민하고 그랬지만 그때마다 생기는 문제로는 4번째 값을 어떻게 알 수 있을지 모르겠다는 거였다. 그러다가 결국 우리는 4번째를 구해야 하고, 1번째라면 3을 더한 숫자를 예측하고, 2번이라면 2, 3번이라면 1을 더하게 하면 되는데 이는 for문의 range 범위를 수정하면 할 수 있는 부분이었다.

# 이렇게 놓는 이유는 i가 1이라면 3만큼 더하면 되고, 2라면 2, 3이라면 1만큼 더하면 된다.
# 그렇기 때문에 반대로 놓아야 다음을 예측이 가능하다.
for i in range(3, 0, -1):
    n = input().strip()
    if n.isdigit():
        fizzbuzz(int(n)+i)
        break

그래서 문자열인지 숫자열인지 파악함과 동시에 값을 출력하게 만들면 정답을 도출할 수 있다.

반응형

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

백준 : 피보나치 함수 - 1003  (0) 2025.10.15
백준 : 소수 구하기 - 1929  (0) 2025.10.15
백준 : FizzBuzz - 14761  (0) 2025.10.10
백준 : 토마토 - 7576  (0) 2025.10.10
백준 : 스택 수열 - 1874  (0) 2025.10.06
'알고리즘' 카테고리의 다른 글
  • 백준 : 피보나치 함수 - 1003
  • 백준 : 소수 구하기 - 1929
  • 백준 : FizzBuzz - 14761
  • 백준 : 토마토 - 7576
Feel나는 대로 GI록하는 글
Feel나는 대로 GI록하는 글
세상을 위한 개발자가 되기 위하여
    반응형
  • Feel나는 대로 GI록하는 글
    FeelGI
    Feel나는 대로 GI록하는 글
  • 전체
    오늘
    어제
    • 분류 전체보기 (58)
      • ML & AI (3)
        • 논문 리뷰 (1)
        • Computer Vision (0)
        • Digital Image Processing (1)
      • 알고리즘 (46)
      • 프로그램(대회,공모전,프로그램) (2)
      • 도서 (0)
      • 필기록 (1)
        • 회고록 (0)
        • 끄적끄적 (1)
      • 취업 준비 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    DP #알고리즘 #백준 #Python
    동적계획
    알고리즘
    백준
    코딩테스트
    파이토치
    #코드트리 #코딩테스트 #코테공부 #코테준비 #알고리즘공부 #갭체크
    ICT 학점연계 프로젝트 인턴십
    FizzBuzz
    14761
    백준 토마토
    구현 #문자열 #백준 #python
    파이썬
    코테
    LG AI
    백준 토마토 7576
    IT대학생
    스택 수열
    LG Aimers
    28702
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
Feel나는 대로 GI록하는 글
백준 : FizzBuzz - 28702
상단으로

티스토리툴바