Python

이번 포스팅은 www.acmicpc.net/problem/11720에서 푼 것을 토대로 작성했습니다. 문자열의 두 번째 문제인 숫자의 합입니다. 문제. 문제를 보시면 숫자의 개수 N을 입력받고 둘째 줄에 N개가 공백 없이 입력받으면 공백 없이 입력받은 숫자의 합을 구하는 프로그램입니다. 코딩. n = int(input()) num = input() sum = 0 for i in range(n): sum = sum + int(num[i]) print(sum) 먼저 숫자의 개수 n을 int형으로 입력받도록 하고 그리고 숫자 num을 str형으로 n개만큼 입력받게 했습니다. 그리고 문자형인 num를 int형으로 인덱 싱하여 합을 구하였습니다 예를 들어 num = 54321 이면 지금은 str형인 54321 입..
이번 포스팅은 www.acmicpc.net/problem/11654에서 푼 것을 토대로 작성했습니다. 문자열의 첫 번째 문제인 아스키코드입니다. 문제. 이번 문제는 간단합니다. 입력이 주어지면 그 입력을 아스키코드로 바꾸는 문제입니다. 코딩. n = input() print(ord(n)) 문제를 풀기 전에 알아야 하는 게 문자를 아스키코드를 바꾸는 함수는 ord()이며 아스키코드를 문자로 바꾸는 것은 chr()입니다. 이것을 이용하여 문제를 풀었습니다. 다음 포스팅으로 찾아오겠습니다 :)
이번 포스팅은 www.acmicpc.net/problem/1065에서 푼 것을 토대로 작성했습니다. 함수의 마지막 문제인 한수입니다. 문제. 처음에는 한수라는 개념을 이해를 못해서 문제를 어떻게 풀어야 할지 몰랐습니다 이 문제에서 한수란 예를 들어 210은 2-1 == 1-0이라 한수입니다 또 110은 1-1 != 1-0이라 한수가 아닙니다. 자릿수의 차가 같을 때, 즉 등차수열 일 때 한수이며 이것을 출력하는 프로그램을 만들어야 합니다. 코딩 1. n = int(input()) a=0 b=0 c=0 han = 99 if n < 100: han = n else : for i in range(100, n+1): a = i//100 b = i%100//10 c = i%10 if (a-b)==(b-c): ha..
이번 포스팅은 www.acmicpc.net/problem/4673에서 푼 것을 토대로 작성했습니다. 함수의 두 번째 문제인 셀프 넘버입니다. 문제. 생성자가 아닌 넘버 이 문제에서는 셀프 넘버를 구하는 문제입니다. 예를 들어 1은 1+1 = 2의 생성자이고 2는 2+2=4의 생성자 3 -> 6 4 -> 8 5 -> 10 이렇게 진행되는데 계속 진행하다 보면 생성자가 없는 숫자들이 나옵니다 1, 3, 5, 7, 9, 20, 31 등등 이런 숫자들을 구해야 하는 문제입니다. 코딩. def d(n): num = n for i in list(str(n)): for j in i: num += int(i) return num self_num = [] for value in range(1,10001): self_nu..
이번 포스팅은 www.acmicpc.net/problem/15596에서 푼 것을 토대로 작성했습니다. 함수의 첫 번째 문제인 정수 N개의 합입니다. 문제. 문제를 보시면 정수 n개가 주어졌을 때 n의 합을 구하는 함수를 만드는 것이 목표이고 python의 조건은 정수 n개가 있는 리스트 a가 주어지며 리턴 값에 a에 포함되는 n개의 합이 출력되게 하는 것입니다. 코딩 1. def solve(a): ans = 0 for num in a: ans += num return ans 처음은 for문을 이용하여 합수를 만들었습니다. 리스트 a가 있다는 가정에 a의 요소를 빼서 ans += num으로 정수의 합을 만들도록 했습니다. 코딩 2. def solve(a): return sum(a) 두 번째는 파이썬에서 제..
이번 포스팅은 www.acmicpc.net/problem/4344에서 푼 것을 토대로 작성했습니다. 1차원 배열의 마지막 문제인 평균은 넘겠지입니다. 문제. 문제를 보시면 첫째 줄에 테스트 케이스 C가 주어지고 둘째 줄부터는 처음 입력은 학생 숫자 그 뒤로 학생 숫자만큼의 점수를 입력받고 출력에는 입력받은 점수의 평균이 넘는 학생 수의 비율을 나타내는 프로 그렇습니다. c = int(input()) for i in range(c): student = 0 x = list(map(int, input().split())) avg = sum(x[1:])/x[0] for j in x[1:]: if j > avg: student += 1 else : student += 0 rate = student/x[0]*100..
이번 포스팅은 www.acmicpc.net/problem/8958에서 푼 것을 토대로 작성했습니다. 1차원 배열의 여섯 번째 문제인 OX 퀴즈입니다. 문제. 테스트 케이스를 받고 OX의 개수를 세어 점수를 매기는 프로그램입니다. 하지만 단순히 O의 개수를 세는 것이 아니라 연속된 O에는 점수를 더 받는 프로그램으로 예를 들어 OXOOO 라면 1+0+1+2+3으로 계산되어야 합니다. 코딩. n = int(input()) for i in range(n): a = list(input()) score = 0 sum = 0 for j in a: if j == 'O': score += 1 else : score = 0 sum = sum + score print(sum) 저는 처음에 문제를 풀 때 지난 문제처럼 빈 ..
이번 포스팅은 www.acmicpc.net/problem/1546에서 푼 것을 토대로 작성했습니다. 1차원 배열의 다섯 번째 문제인 평균입니다. 문제. 문제를 보시면 새로운 평균을 만들게 하는 프로그램입니다. 점수 중 최고점을 M이라 두고 점수/M*100을 하여 새로운 점수를 구하고 새로운 점수로 새로운 평균을 출력으로 나타나게 해야 합니다. 코딩. n = int(input()) score = list((map(int,input().split()))) M = max(score) new_score = [] for i in range(n): new_score.append(score[i]/M*100) new_avg = sum(new_score)/n print("%.2f" %new_avg) 그래서 저는 시험 개..
우준세
'Python' 카테고리의 글 목록 (6 Page)