목록Coding test(Python3) (178)
NIRVANA
1. 문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. 출력한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다. 2. 문제 풀이 import sysN, M = map(int, sys.stdin.readline().split())for i in range(N, M+1): if i == 1: continue for j in range(2, int(i**0.5)+1): if i % j == 0: break else: print(i) 깔깔 포인트...M도 소수인..
1. 문제초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항prices의 각 가격은 1 이상 10,000 이하인 자연수입니다.prices의 길이는 2 이상 100,000 이하입니다. 2. 문제 풀이 1) queue에 원소가 있을 동안 반복한다2) queue에서 가장 첫번째 원소를 pop한다.3) 만약 queue에 원소가 있다면, 큐에 남아 있는 원소를 탐색하며 현재 주식 가격이 해당 시점 가격보다 높거나 같은지 확인한다. 만약 같다면 count+1을한다.4) 만약 떨어졌다면 1초 동안 가격을 유지한 것이므로 count+1을 하고 break를 해서 나온다5) answer에 co..
1. 문제단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 제한사항s는 길이가 1 이상, 100이하인 스트링입니다.2. 문제 풀이def solution(s): answer = '' if len(s) % 2 == 0: answer = s[len(s)//2-1]+s[len(s)//2] else: answer = s[len(s)//2] return answer
1. 문제트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 수 있으며, 다리는 weight 이하까지의 무게를 견딜 수 있습니다. 단, 다리에 완전히 오르지 않은 트럭의 무게는 무시합니다.예를 들어, 트럭 2대가 올라갈 수 있고 무게를 10kg까지 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6]kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다. 따라서, 모든 트럭이 다리를 지나려면 최소 8초가 걸립니다.solution 함수의 매개변수로 다리에 올라갈 수 있는 트럭 수 bridge_length, 다리가 견딜 수 있는 ..
1. 문제프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건phone_number는 길이 4 이상, 20이하인 문자열입니다.2. 문제 풀이def solution(phone_number): answer = '' answer = '*'*(len(phone_number)-4) + phone_number[-4:] return answer
1. 문제정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 제한 조건arr은 길이 1 이상인 배열입니다.인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. 2. 문제풀이def solution(arr): if len(arr)