• Home
  • About
    • Yerim Oh photo

      Yerim Oh

      Happy and worthwhile day by day :)

    • Learn More
    • Email
    • LinkedIn
    • Instagram
    • Github
    • Youtube
  • Posts
    • All Posts
    • All Tags
  • Projects

[1005] (파이썬) CODE TREE_Lv.2 Intermediate Low: 19단 출력

26 Jan 2020

Reading time ~1 minute

Table of Contents
  • 문제
  • 풀이과정
    • 1) 규칙 찾기
    • 2) 예외 찾기
  • 구현
  • 결과

문제

[19단 출력]
풀러 가기

19 * 19 단을 다음 양식에 맞춰 출력하는 코드를 작성해보세요.

1 * 1 = 1 / 1 * 2 = 2 
1 * 3 = 3 / 1 * 4 = 4 
............. 
1 * 17 = 17 / 1 * 18 = 18 
1 * 19 = 19 
2 * 1 = 2 / 2 * 2 = 4 
............. 
19 * 17 = 323 / 19 * 18 = 342 
19 * 19 = 361

Input: x
Output: 
1 * 1 = 1 / 1 * 2 = 2 
1 * 3 = 3 / 1 * 4 = 4 
....(생략).... 
1 * 17 = 17 / 1 * 18 = 18 
1 * 19 = 19 
2 * 1 = 2 / 2 * 2 = 4 
....(생략).... 
19 * 17 = 323 / 19 * 18 = 342 
19 * 19 = 361
Constraints:
시간 제한: 1000ms
메모리 제한: 80MB

풀이과정

1) 규칙 찾기 2) 예외 찾기

image

1) 규칙 찾기

  • 주황색: 홀수를 곱할 때 ➡ ex) 1 * 홀수 = 결과
  • 파란색: 짝수를 곱할 때 ➡ ex) / 1 * 짝수 = 결과\n

2) 예외 찾기

  • 분홍색: 답이 19인 경우 ➡ ex) \n (주황색과 같이 출력한 후, 뒤에 짝수를 출력하지 않아야 함)

구현

# 19단 전체를 돌린다 -> 여기 * 1 = 답
for i in range(1, 20): 
  # 각 19단을 돌린다 -> 1 * 여기 = 답
  # 이 부분에선 홀수, 짝수, 예외를 생각해줘야 한다
  for j in range(1, 20):
    if j%2==1: # 홀수일 때
      print(i,"*",j,"=",i*j, end=" ") # 뒤에 홀수가 붙도록 출력하기위해 end="" 추가    
    else: # 짝수일 때
      print("/",i,"*",j,"=",i*j) # \n의 효과를 위해 줄바꿈 안함
    if j== 19:
      print() # 예외처리


결과

image 쨔쨘



Coding test Share Tweet +1