[우리밋의 LAST 보너스 문제] 해당 문제는 이차원 배열의 개념과 원리를 파악하기 위해 "우리밋"이 직접 만든 문제임을 알려드립니다. x축과 y축의 개념을 머릿 속에서 자유롭게 조작할 수 있도록 훈련하기 위해 만든 문제입니다. 이 점을 기억하시고 아래 문제를 푸시길 바랍니다. 해당 문제를 배포하시거나 외부에서 사용하실 때는 "우리밋"을 한번씩만 거론 부탁드리겠습니다. 구독만 해주신다면 그것으로 충분합니다. ps. "내 미래"가 해당 문제 이름입니다. 참고로 전 다녀왔습니다. :) 📖question 훈련병인 철수는 교관의 지시에 따라야한다. 교관은 "좌로 1보, 하로 2보 가!"와 같이 좌,우,상,하로 이동할 것을 명령한다. 철수의 현재 위치가 입력으로 주어질 때 교관의 명령대로 이동한 위치는 어디일까?..
[95] 이상한 출석 번호 부르기 3 📖question 출석 번호를 n번 무작위로 불렀을 때, 가장 빠른 번호를 출력해 보자. 입력 첫 번째 줄에 출석 번호를 부른 횟수인 정수 n이 입력된다. (1 ~ 10000) 두 번째 줄에는 무작위로 부른 n개의 번호(1 ~ 23)가 공백을 두고 순서대로 입력된다. 10 10 4 2 3 6 6 7 9 8 5 출력 출석을 부른 번호 중에 가장 빠른 번호를 1개만 출력한다. 2 Tip:: 가장 작은 값을 찾으면 된다. 파이썬에서는 배열(iterable) 객체의 원소 중 가장 작은 값을 반환해주는 min() 함수를 제공하고 있다. ✍️answer num = int(input()) student = map(int, input().split()) print(min(stude..
[94] 이상한 출석 번호 부르기 2 ❌ 📖question 출석 번호를 n번 무작위로 불렀을 때, 부른 번호를 거꾸로 출력해 보자. 입력 첫 번째 줄에 출석 번호를 부른 횟수인 정수 n이 입력된다. (1 ~ 10000) 두 번째 줄에는 무작위로 부른 n개의 번호(1 ~ 23)가 공백을 두고 순서대로 입력된다. 10 10 4 2 3 6 6 7 9 8 5 출력 출석을 부른 번호 순서를 바꾸어 공백을 두고 출력한다. 5 8 9 7 6 6 3 2 4 10 Tip:: 리스트의 메소드인 reverse()를 이용하면 된다. ✍️answer # 나의 풀이 num = int(input()) student = list(map(int, input().split())) # list형으로 묶어줘야 reversed 가능 for ..
[93] 이상한 출석 번호 부르기 1 ❌ 📖question 정보 선생님은 수업을 시작하기 전에 이상한 출석을 부른다. 선생님은 출석부를 보고 번호를 부르는데, 학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부른다. 그리고 얼굴과 이름이 잘 기억되지 않는 학생들은 번호를 여러 번 불러 이름과 얼굴을 빨리 익히려고 하는 것이다. 출석 번호를 n번 무작위로 불렀을 때, 각 번호(1 ~ 23)가 불린 횟수를 각각 출력해보자. 입력 첫 번째 줄에 출석 번호를 부른 횟수인 정수 n이 입력된다. (1 ~ 10000) 두 번째 줄에는 무작위로 부른 n개의 번호(1 ~ 23)가 공백을 두고 순서대로 입력된다. 10 1 3 2 2 5 6 7 4 5 9 출력 1번부터 번호가 불린 횟수를 순서대로 공백으로..
[84] 빛 섞어 색 만들기 📖question 빨강(red), 초록(green), 파랑(blue) 빛을 섞어 여러 가지 빛의 색을 만들어 내려고 한다. 빨강(r), 초록(g), 파랑(b) 각각의 빛의 개수가 주어질 때, (빛의 강약에 따라 0 ~ n-1 까지 n가지의 빛 색깔을 만들 수 있다.) 주어진 rgb 빛들을 다르게 섞어 만들 수 있는 모든 경우의 조합(r g b)과 총 가짓 수를 계산해보자. 입력 빨녹파(r, g, b) 각 빛의 강약에 따른 가짓수(0 ~ 128))가 공백을 사이에 두고 입력된다. 예를 들어, 3 3 3 은 각 색깔 빛에 대해서 그 강약에 따라 0~2까지 3가지의 색이 있음을 의미한다. 2 2 2 출력 만들 수 있는 rgb 색의 정보를 오름차순(계단을 올라가는 순, 12345....
[78] 짝수 합 구하기 📖question 정수(1 ~ 100) 1개를 입력받아 1부터 그 수까지 짝수의 합을 구해보자. 입력 정수 1개가 입력된다. (0 ~ 100) 5 출력 1부터 입력된 수까지 짝수의 합을 출력한다. 6 Tip:: range()함수의 첫 인자를 2로하고, 세 번째 인자를 2로 하면 2에서 2씩 증가하기 때문에 모든 숫자가 짝수가 된다. 따라서 이를 모두 더해주면 되는 것. ✍️answer sum = 0 num = int(input()) for i in range(0, num+1, 2): sum = sum+i print(sum) [79] 원하는 문자가 입력될 때까지 반복 출력하기 📖question 'q'가 입력될 때까지 입력한 문자를 계속 출력하는 프로그램을 작성해보자. 입력 문자들이..
[71] ❌ 📖question 정수가 순서대로 입력된다. (단, 개수는 알 수 없다.) 0이 아니면 입력된 정수를 출력하고, 0이 입력되면 출력을 중단해보자. while( ), for( ) 등의 반복문을 사용할 수 없다. 입력 정수가 순서대로 입력된다. 7 4 2 3 0 1 5 6 9 10 8 출력 입력된 정수를 줄을 바꿔 하나씩 출력하는데, 0이 입력되면 종료한다. (0은 출력하지 않는다.) 7 4 2 3 Tip:: 원래 이 문제는 goto문을 이용해 풀도록 유도한 것인데 파이썬에서는 goto문을 제공하지 않으므로 함수를 이용하여 풀도록 한다. 파이썬에서는 do~while()과 같은 반복문도 제공하지 않는다. 파이썬에서는 함수를 이용하여 goto문처럼 사용하면 된다. 함수 배우러가기 ✍️answer d..
[65] 📖question 세 정수 a, b, c가 입력되었을 때, 짝수만 출력해보자. Tip1:: 조건문 이용 조건문 배우러가기 Tip2:: filter() 이용 필터 함수 배우러가기 '*(asterisk)' 이용 '*' Asterisk 배우러가기 익명함수 lambda 이용 익명함수 lambda 배우러가기 ✍️answer a, b, c = map(int, input().split()) if a % 2 == 0: print(a) if b % 2 == 0: # elif 아님 print(b) if c % 2 == 0: print(c) [66] 📖question 세 정수 a, b, c가 입력되었을 때, 짝(even)/홀(odd)을 출력해보자. ✍️answer a, b, c = map(int, input().s..