본문 바로가기

Python

(12)
CodeUp 6084 : [기초-종합] 소리 파일 저장용량 계산하기(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 소리가 컴퓨터에 저장될 때에는 디지털 데이터화 되어 저장된다. 마이크를 통해 1초에 적게는 수십 번, 많게는 수만 번 소리의 강약을 체크하고, 한 번씩 체크할 때 마다 그 값을 정수값으로 바꾸어 저장하는 방식으로 소리를 파일로 저장할 수 있다. 값을 저장할 때에는 비트를 사용하는 정도에 따라 세세한 녹음 정도를 결정할 수 있고, 좌우(스테레오) 채널로 저장하면 2배… 5.1채널이면 6배의 저장공간이 필요하고, 녹음 시간이 길면 그 만큼 더 많은 저장공간이 필요하다. 1초 동안 마이크로 소리강약을 체크하는 횟수를 h (헤르쯔, Hz 는 1초에 몇 번? 체크하는가를 ..
CodeUp 6081 : [기초-종합] 16진수 구구단 출력하기(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 16진수(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F)를 배운 영일이는 16진수끼리 곱하는 16진수 구구단?에 대해서 궁금해졌다. A, B, C, D, E, F 중 하나가 입력될 때, 1부터 F까지 곱한 16진수 구구단의 내용을 출력해보자. (단, A ~ F 까지만 입력된다.) 예시 ... print('%X'%n, '*%X'%i, '=%X'%(n*i), sep='') ... 참고 print('%X'%n) #n에 저장되어있는 값을 16진수(hexadecimal) 형태로 출력 작은 따옴표 2개를 사용해서 print(..., se..
백준 2884번 알람 시계 문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를 언제로..
CodeUp 6080 : [기초-종합] 주사위 2개 던지기(설명)(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 1부터 n까지, 1부터 m까지 숫자가 적힌 서로 다른 주사위 2개를 던졌을 때, 나올 수 있는 모든 경우를 출력해보자. 예시 ... for i in range(1, n+1) : for j in range(1, m+1) : print(i, j) ... 참고 위 코드는 바깥쪽의 i 값이 1부터 n까지 순서대로 바뀌는 각각의 동안에 안쪽의 j 값이 다시 1부터 m까지 변하며 출력되는 코드이다. 조건선택 실행구조 안에 다른 조건선택 실행구조를 넣어 처리할 수 있는 것과 마찬가지로 반복 실행구조 안에 다른 반복 실행구조를 넣어 처리할 수 있다. 원하는 형태로 실행 구조를 ..
CodeUp 6079 : [기초-종합] 언제까지 더해야 할까?(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 1, 2, 3 ... 을 계속 더해 나갈 때, 그 합이 입력한 정수(0 ~ 1000)보다 같거나 작을 때까지만 계속 더하는 프로그램을 작성해보자. 즉, 1부터 n까지 정수를 계속 더해 나간다고 할 때, 어디까지 더해야 입력한 수보다 같거나 커지는 지를 알아보고자하는 문제이다. 입력 정수 1개가 입력된다. 출력 1, 2, 3, 4, 5 ... 를 순서대로 계속 더해 합을 만들어가다가, 입력된 정수와 같거나 커졌을 때, 마지막에 더한 정수를 출력한다. 정답 n=int(input()) t=0 s=0 while s
CopeUp 6078 : [기초-종합] 원하는 문자가 입력될 때까지 반복 출력하기(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 영문 소문자 'q'가 입력될 때까지 입력한 문자를 계속 출력하는 프로그램을 작성해보자. 입력 문자들이 1개씩 계속해서 입력된다. 출력 영문 소문자 'q'가 입력될 때까지 입력한 문자를 계속 출력한다. 정답 while True: x=input() print(x) if x=='q': break
CodeUp 6033 : [기초-산술연산] 문자 1개 입력받아 다음 문자 출력하기(설명)(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 문자 1개를 입력받아 그 다음 문자를 출력해보자. 영문자 'A'의 다음 문자는 'B'이고, 숫자 '0'의 다음 문자는 '1'이다. 예시 ... print(chr(n+1)) 참고 숫자는 수를 표현하는 문자로서 '0' 은 문자 그 자체를 의미하고, 0은 값을 의미한다. 힌트 아스키문자표에서 'A'는 10진수 65로 저장되고 'B'는 10진수 66으로 저장된다. 따라서, 문자도 값으로 덧셈을 할 수 있다. 어떤 문자의 값에 1을 더하면 그 다음 문자의 값이 된다. 입력 문자 1개가 입력된다. 출력 그 다음 문자를 출력한다. 정답 a=ord(input()) print(c..
CodeUp 6031 : [기초-값변환] 정수 입력받아 유니코드 문자로 변환하기(설명)(py) 문제 설명 본 문제는 python 의 빠른 기초 학습을 위해 설계된 문제로서 python 코드 제출을 기준으로 설명되어 있습니다. ------ 10진 정수 1개를 입력받아 유니코드 문자로 출력해보자. 예시 c = int(input()) print(chr(c)) #c에 저장되어 있는 정수 값을 유니코드 문자(chracter)로 바꿔 출력한다. 참고 입력은 기본적으로 모두 문자열로 입력되는 것이라고 할 수 있다. 따라서, 입력 값이 문자/문자열/정수/실수인지에 따라서 먼저 정확하게 변환시킨 다음에 사용하거나 계산하는 것이 좋다. 예를 들어 123 이 입력 되었다고 한다면, 이건 정수일까? 문자열일까? 조금 생각해보면, 입력된 것만 보고는 그 값이 어떤 데이터인지 알 수 없다는 것을 쉽게 이해할 수 있다. 따..