ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Python] BOJ 2739 구구단
    코딩테스트/백준 2025. 4. 22. 16:42

    요구사항

    숫자를 입력받아 그 숫자에 해당하는 구구단을 출력하라. 

    따라서 주어진 숫자의 범위가 극히 작으므로 시간제한 및 공간제한은 무의미하다. 

    설계

    숫자를 입력 받아 해당 숫자에 해당하는 구구단을 출력한다. 

    구현 1

    import sys
    input = sys.stdin.readline().rstrip()
    
    n = int(input())
    end_num = 9
    
    for mul_num in range(end_num):
        print(n, '*', mul_num, '=', n * mul_num)

    실수 1

    • 라인 4에서 str 은 callable 할 수 없다한다. 
    • input 이라는 변수에 str 을 저장함. 
    • 근데 문자열을 함수처럼 불러 생긴 오류 
    • lambda: . . .를 붙여 해결한다. 
      • 위 뜻은 input을 함수처럼 다시 만든 것. 

    실수 2

    # 입력
    2
    
    # 출력 결과
    2 * 0 = 0
    2 * 1 = 2
    2 * 2 = 4
    2 * 3 = 6
    2 * 4 = 8
    2 * 5 = 10
    2 * 6 = 12
    2 * 7 = 14
    2 * 8 = 16
    • 구구단의 시작과 끝이 문제의 의도와 다르다. 

    최종 구현 

    import sys
    input = lambda : sys.stdin.readline().rstrip()
    
    n = int(input())
    
    end_num = 10
    
    for mul_num in range(1, end_num):
        print(n, '*', mul_num, '=', n * mul_num)

     

    지난 번의 제출 및 회고

    n = input()
    
    for i in range(1,10):
        print(f'{n} * {i} = {int(n)*i}')
    • 재사용성만 본다면 처음이 낫지만 f-string 사용법을 다시금 상기되서 좋다. 

    '코딩테스트 > 백준' 카테고리의 다른 글

    [Python] BOJ 15596 정수 N개의 합  (0) 2025.04.22
    [Python] BOJ 2562 최댓값  (6) 2025.04.22
    [Python] BOJ 2798 블랙잭  (1) 2025.03.26
    [Python] BOJ 2231 분해합  (0) 2025.03.26
    [Python] BOJ 9935 문자열 폭발  (0) 2025.02.20
Designed by Tistory.