반응형

파이썬 반복문 16

[T-SUM] 6주차 자료 - while 반복문, 라이브러리

오늘의 내용 미리보기 본문 우선 본격적으로 시작하기에 앞서서 다음 페이지를 하나 보고 시작합시다. https://docs.python.org/ko/3/library/index.html The Python Standard Library While The Python Language Reference describes the exact syntax and semantics of the Python language, this library reference manual describes the standard library that is distributed with Python. It... docs.python.org 이 문서는 파이썬의 다양한 라이브러리를 담고 있는 문서입니다. 내장 함수를 한 번 봅시다...

T-SUM 멘토링 2023.07.12

[파이썬, Python] 백준 10815: 숫자 카드

문제 https://www.acmicpc.net/problem/10815 10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 코드 n = int(input()) a_list = list(map(int, input().split())) a_list = set(a_list) m = int(input()) num_list = list(map(int, input().split())) for i in num_list: if i in a_list: print(1) else: print(0) 설명..

[파이썬, Python] 백준 2675: 문자열 반복

문제 https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net 코드 T = int(input()) for _ in range(T): S = list(input()) for i in range(2,len(S)): print((S[i]*int(S[0])), end = '') print() 설명 우선 T에 테스트 케이스의 개수를 받아준다. T의 수만큼 반복문을 실행해주는데, 반복문에서 문장을 입력 받아준다. 이후 처음 입력된 숫자를 제외한 부분을 숫..

[파이썬, Python] 백준 8598: OX퀴즈

문제 https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 코드 N = int(input()) for i in range(N): OX_list = list(input()) score = 0 totalscore = 0 for OX in OX_list: if OX == 'O': score += 1 totalscore += score else: score = 0 print(totalscore) 설명 우선 테스트 케이스의 개수를 N을 통..

[파이썬, Python] 백준 1546: 평균

문제 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 코드 newscoresum = 0 N = int(input()) score = list(map(int, input().split())) M = max(score) for i in range(len(score)): n = score[i]/M*100 n = float(n) newscoresum += n print(newscoresum/len(score)) 설명 새로운 평균의 합계를 받아주기..

[파이썬, Python] 백준 3052: 나머지

문제 https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net 코드 remain = [] for i in range(10): text = int(input()) text = text % 42 if text not in remain: remain.append(text) else: continue print(len(remain)) 설명 특정 수를 입력 받고, 42로 나눈 나머지를 구하는 문제이다. 나머지는 %로 구하고, 이 중에 겹치지 않는 나머지를 remain에 append 해준다. if문에 걸리지 않는 조건 같은 경우에는 ..

[파이썬, Python] 백준 5597: 과제 안 내신 분..?

문제 https://www.acmicpc.net/problem/5597 5597번: 과제 안 내신 분..? X대학 M교수님은 프로그래밍 수업을 맡고 있다. 교실엔 학생이 30명이 있는데, 학생 명부엔 각 학생별로 1번부터 30번까지 출석번호가 붙어 있다. 교수님이 내준 특별과제를 28명이 제출했는데, www.acmicpc.net 코드 num_list = [] for _ in range(28): num_list.append(int(input())) for i in range(1, 31): if i not in num_list: print(i) 설명 딱히 어려운 것은 없는 반복문 문제였다. 출석 번호를 입력 받고, 없는 숫자를 찾아서 출력해주면 되는 간단한 문제이다. 30명중에 28명이 제출했으므로, 28개..

[파이썬, Python] 백준 10807: 개수 세기

문제 https://www.acmicpc.net/problem/10807 10807번: 개수 세기 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거 www.acmicpc.net 코드 n = int(input()) num_list = list(map(int, input().split())) v = int(input()) cnt = 0 for i in num_list: if i == v: cnt += 1 print(cnt) 설명 정수의 개수 n 을 입력 받아 준다. num_list라는 변수에 리스트의 값을 입력 받아 준다. v를 통해 찾아야 할 정수를 입력..

[파이썬, Python] 백준 10951: A+B - 4

문제 https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 코드 while True: try: a, b = map(int, input().split()) except: break print(a+b) 설명 문제를 딱 보았을 때, 무엇을 의미하는지 모를 수 있다. 오류를 처리하기 위한 문제인데, try와 except라는 함수를 사용하게 된다. try를 통해서 오류가 나지 않았을 때, 동작을 지정해주는 것은 일반적인 반복문과 동일하다. except를 통해서 오류가 생겼을 때(입력이 string일 경우 등) 예외 처리를 해주자.

[파이썬, Python] 백준 2439: 별 찍기 - 2

문제 https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 코드 N = int(input()) for i in range(1, N+1): print(" "*(N-i) + "*"*i) 설명 앞선 문제와 크게 차이는 없지만, 공백을 출력해주어야 한다. (N-i)의 수 만큼 공백을 출력해주었다.

반응형