청야에몽
청야의 개발 일기
청야에몽
전체 방문자
오늘
어제
  • 분류 전체보기 (153)
    • os (4)
      • Linux (4)
    • Language (32)
      • Python (15)
      • C# (6)
      • Java (11)
    • BaekJoon (92)
      • 단계별로 풀어보기 (81)
      • 누적합 (11)
    • Test (6)
      • 코딩테스트 (6)
      • 42 SEOUL (0)
    • Project (9)
      • 충돌, 피하기 게임 (8)
      • Unreal engine5 CICD 구축 (1)
    • Git & GitHUB (9)
    • Cloud (0)
      • AWS (0)
      • Azure (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 누적합
  • java
  • 백준
  • 리눅스
  • Rebase
  • git
  • 중첩for문
  • 누적 합
  • 파이썬
  • c#
  • Linux
  • Python
  • Reset
  • 재귀 함수
  • 연산자
  • for문
  • 자료형
  • pygame
  • Revert
  • 논리 연산자

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청야에몽

청야의 개발 일기

BaekJoon/단계별로 풀어보기

[백준] 1차원 배열 - 3052번 (Python)

2022. 11. 22. 13:00
728x90

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

 

3052번: 나머지

각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.

www.acmicpc.net


문제

두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.

수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.

입력

첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다.

출력

첫째 줄에, 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력한다.

코드 정답

1번 코드

num = []
for i in range(10):
    a = int(input())
    b = a % 42
    num.append(b)
n = set(num)
print(len(n))	// 혹은 6행을 지우고 print(len(set(num))

2번 코드

num = []
for i in range(10):
    a = int(input())
    if a%42 not in num:
    	num.append(a % 42)
print(len(num))

풀이

1번 코드

1행 : num 이란 이름의 빈 배열을 만든다.

2행 : i 가 0부터 10이 될 때까지 3~5행을 반복한다.

3행 : 문자를 입력받아 정수로 변환 후 a 에 저장한다.

4행 : a 를 42로 나눈 나머지 값을 b 에 저장한다.

5행 : append 를 이용하여 배열에 차곡차곡 저장한다. ex) num[4] 의 인덱스까지 저장되어 있다면 다음은 num[5] 에 저장.

6행 : set 을 이용해 중복된 값을 제거(집합 자료형)한다.

7행 : len 을 이용해 길이를 출력한다.

 

2번 코드

1행 : num 이란 이름의 빈 배열을 만든다.

2행 : i 가 0부터 10이 될 때까지 3~5행을 반복한다.

3행 : 문자를 입력받아 정수로 변환 후 a 에 저장한다.

4행 : a 를 42로 나눈 값의 나먹지가 num 에 저장되어 있지 않다면 5행을 실행한다.

5행 : append 를 이용하여 배열에 저장한다.

6행 : len 을 이용해 배열의 길이를 파악하고 출력한다.

728x90
저작자표시 비영리 변경금지

'BaekJoon > 단계별로 풀어보기' 카테고리의 다른 글

[백준] 1차원 배열 - 8958번 (Python)  (0) 2022.11.22
[백준] 1차원 배열 - 1546번 (Python)  (0) 2022.11.22
[백준] 1차원 배열 - 5597번 (Python)  (0) 2022.11.22
[백준] 1차원 배열 - 2562번 (Python)  (1) 2022.11.22
[백준] 1차원 배열 - 10818번 (Python)  (1) 2022.11.22
    'BaekJoon/단계별로 풀어보기' 카테고리의 다른 글
    • [백준] 1차원 배열 - 8958번 (Python)
    • [백준] 1차원 배열 - 1546번 (Python)
    • [백준] 1차원 배열 - 5597번 (Python)
    • [백준] 1차원 배열 - 2562번 (Python)
    청야에몽
    청야에몽
    개인적으로 학습을 하여 까먹지 않기 위해 올리는 블로그입니다.

    티스토리툴바