백준문제풀이
-
백준 별 찍기 - 13 - 2523번 파이썬백준/단계별로 풀어보기 2020. 3. 21. 15:07
이 포스팅에서는 백준 알고리즘 사이트 2523번을 파이썬으로 코딩해보도록 하겠습니다. 이 문제는 정수 n을 입력받고 1~2*n-1 번째 줄까지 차례대로 별을 출력하면 되는 문제입니다. num = int(input()) for i in range(1, 2*num): if i > num: num2 = num*2 - i else: num2 = i print("*"*(num2)) cs 원래 이 문제를 푸는방법은 1~n번째줄에 별출력하는 for문, n+1~2*n-1번째줄에 별출력하는 for문으로 각각 따로 출력해주면 쉽게 풀 수 있습니다. 다만 저는 색다르게 풀고싶었기에 이렇게 코드를 짜게 되었습니다.
-
백준 평균은 넘겠지 - 4344번 파이썬백준/단계별로 풀어보기 2020. 3. 16. 22:21
이 포스팅에서는 백준 알고리즘 사이트 4344번을 파이썬으로 코딩해보도록 하겠습니다. 이번 문제는 테스트케이스의 개수 C를 입력받고, 각 테스트케이스에서 학생의 수를 뜻하는 테스트케이스의 맨 앞의 정수 N과 N명의 점수를 입력받는다. 그리고 각 테스트케이스마다 그 줄의 평균을 넘는 학생의 비율을 반올림하여 출력하면 되는 문제이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 num = int(input()) for i in range(num): sm_list = list(map(int, input().split())) avg = 0 avg_num = 0 avg_per = 0 for j in range(sm_list[0]): avg += sm_list[1+j] avg = av..
-
백준 사분면 고르기 - 14681번 파이썬백준/단계별로 풀어보기 2020. 3. 16. 22:02
이 포스팅에서는 백준 알고리즘 사이트 14681번을 파이썬으로 코딩해보도록 하겠습니다. 이 문제는 정수 2개를 입력받고 몇사분면에 있는지 출력하면 되는 문제입니다. a가 x축, b가 y축일때 a가 양수, b가 양수 = 1사분면 a가 음수, b가 양수 = 2사분면 a가 음수, b가 음수 = 3사분면 a가 양수, b가 양수 = 4사분면 입니다. a = int(input()) b = int(input()) if a > 0 and b > 0: print("1") elif a 0: print("2") elif a
-
백준 OX퀴즈 - 8958번 파이썬백준/단계별로 풀어보기 2020. 3. 13. 11:09
이 포스팅에서는 백준 알고리즘 사이트 8958번을 파이썬으로 코딩해보도록 하겠습니다. 이 문제는 N과 N개의 테스트케이스를 입력받고, 각 테스트케이스의 점수를 출력하면 되는 문제입니다. 테스트케이스의 점수 = 연속된 O의 개수 예) OOXXOXXOOO = 1+2+0+0+1+0+0+1+2+3 = 10 num = int(input()) total_list = [] for i in range(0, num): a = input() now_score = 0 total_score = 0 for j in a: if j == 'O': now_score = now_score + 1 total_score += now_score else: now_score = 0 total_list.append(total_score) fo..
-
백준 평균 - 1546번 파이썬백준/단계별로 풀어보기 2020. 3. 12. 15:55
이 포스팅에서는 백준 알고리즘 사이트 1546번을 파이썬으로 코딩해보도록 하겠습니다. 이 문제는 N과 N개의 과목을 입력받아 새로운 평균을 출력하면 되는 문제입니다. 우선 입력받은 점수들 중 최댓값을 up이라고 한다면 새로운 점수 = 원래점수/up*100 입니다. 그리고 새로운 평균 = 새로운 점수들을 더한것 / N 이 되겠죠. a = int(input()) score_list = list(map(int, input().split())) up = max(score_list) result = 0 for i in range(0, a): score_list[i] = score_list[i]/up*100 result = result + score_list[i] result = result/a print(resu..
-
백준 나머지 - 3052번 파이썬백준/단계별로 풀어보기 2020. 3. 11. 16:44
이 포스팅에서는 백준 알고리즘 사이트 3052번을 파이썬으로 코딩해보도록 하겠습니다. 이번 문제는 한줄에 하나씩 총 10개의 숫자를 입력받고, 42로 나눴을때 서로 다른 나머지의 개수를 출력하면 되는 문제입니다. num = [] for i in range(0, 10): a = int(input()) a = a%42 num.append(a) result = len(set(num)) print(result) cs 저는 숫자를 입력받자마자 나머지를 구해 리스트에 저장했습니다. 그리고 set함수와 len함수를 썼는데, set함수는 리스트에서 중복된값을 없애주는 함수이고, len함수는 리스트의 길이를 구하는 함수입니다.