파이썬
-
백준 1546 평균 파이썬IT/알고리즘 2022. 2. 21. 16:19
풀이 N = int(input()) a = list(map(int, input().split())) max_a = max(a) # print(a) # print(max_a) new = [] for i in range(N) : new.append((a[i]/max_a)*100) print(sum(new)/N) N → 몇 과목 봤는지 넣고 a → 과목당 몇 점인지 리스트형태로 넣고 max_a → 과목중 최대값 넣고 new → 라는 리스트 [] 만들어서 for 문 돌림 for i in range(N) → 범위는 N만큼 new.append((a[i]/max_a)*100) → new라는 리스트에 추가할건데 뭐를? (a[i]/max_a)* → 100 a에 넣은 과목(순서대로)를 최댓값 max_a로 나눈 후, 100..
-
백준 3052 나머지 파이썬IT/알고리즘 2022. 2. 20. 02:16
https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net 풀이 A=[] for i in range(10) : A.append(int(input())%42) s = set(A) print(len(s)) set 함수를 써야했다. set 함수의 특징으로는 1. 중복을 제거한다는점 2. 순서가 없다는점 이라고함 참고한 블로그 https://velog.io/@insutance/Python-set-%EC%9D%B4%EB%9E%80 [Python] set() 이란 python 'set( ) 함수' 정리 velog.io
-
백준 2577 숫자의 개수 파이썬IT/알고리즘 2022. 2. 20. 00:18
https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 풀이 A = int(input()) B = int(input()) C = int(input()) cnt = 0 D= A*B*C x= [int(i) for i in str(D)] while True : print(x.count(cnt)) cnt += 1 if cnt == 10 : break 뭔가 더 심플하게 할 수 있을거같은데 음 다른 블로그를 찾아보니 곱한 값을 더 쉽게 리스트로 담더라. result = list(str(A*B*C)) 이런 식으로,, ..
-
백준 2562 최댓값 파이썬IT/알고리즘 2022. 2. 19. 17:02
https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 풀이 cnt = 0 list = [] while True : i = int(input()) cnt += 1 list.append(i) if cnt == 9 : break print(max(list)) print(list.index(max(list))+1) for 문으로 풀어도 되는데, while 문으로 풀었다. 처음에 틀려서 또 뭐가 틀렸는가 .. 했는데 마지막 최..
-
백준 1110 더하기 사이클 파이썬IT/알고리즘 2022. 2. 18. 19:56
문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 ..
-
백준 10951 A+B - 4 파이썬IT/알고리즘 2022. 2. 18. 17:18
문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. 예제 입력 1 복사 1 1 2 3 3 4 9 8 5 2 예제 출력 1 복사 2 5 7 17 7 풀이 while True : try : n, x = map(int, input().split()) print(n+x) except : break try 와 except를 써야 한다고함. 출처 : https://www.acmicpc.net/board/view/43198 글 읽기 - 10951번 문제 파이썬 런타임오류 질문드립니다..
-
백준 10952 A+B -5 파이썬IT/알고리즘 2022. 2. 18. 16:44
문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다. 출력 각 테스트 케이스마다 A+B를 출력한다. 예제 입력 1 복사 1 1 2 3 3 4 9 8 5 2 0 0 예제 출력 1 복사 2 5 7 17 7 풀이 while True : n, x = map(int, input().split()) if n == 0 and x ==0 : break print(n+x) for문 하고 while문 하니 헷갈렸엉 실수 while 하고 그다음 True 말고 무조건 조건을 넣어야하는줄 알고 n, ..
-
백준 10871 X보다 작은 수 파이썬IT/알고리즘 2022. 2. 18. 01:54
문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. 출력 X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 예제 입력 1 복사 10 5 1 10 4 9 2 3 8 5 7 6 예제 출력 1 복사 1 4 2 3 풀이 할 말이 많은데 후.. 문제를 제대로 이해하는데 1시간 걸린듯, 다른 블로그보니 나만 그런거같아서 더 화남 ㅋㅋㅋ import sys N,X = map(int,s..