[프로그래머스] 서버 증설 횟수 -java
·
CodingTest/programmers
문제 설명 당신은 온라인 게임을 운영하고 있습니다. 같은 시간대에 게임을 이용하는 사람이 m명 늘어날 때마다 서버 1대가 추가로 필요합니다. 어느 시간대의 이용자가 m명 미만이라면, 서버 증설이 필요하지 않습니다. 어느 시간대의 이용자가 n x m명 이상 (n + 1) x m명 미만이라면 최소 n대의 증설된 서버가 운영 중이어야 합니다. 한 번 증설한 서버는 k시간 동안 운영하고 그 이후에는 반납합니다. 예를 들어, k = 5 일 때 10시에 증설한 서버는 10 ~ 15시에만 운영됩니다. 하루 동안 모든 게임 이용자가 게임을 하기 위해 서버를 최소 몇 번 증설해야 하는지 알고 싶습니다. 같은 시간대에 서버를 x대 증설했다면 해당 시간대의 증설 횟수는 x회입니다. 모든 게임 이용자를 감당하기 위해 최소 7..
[프로그래머스] 문자열 내 마음대로 정렬하기 -python
·
CodingTest/programmers
문제 설명문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다.  제한 조건strings는 길이 1 이상, 50이하인 배열입니다.strings의 원소는 소문자 알파벳으로 이루어져 있습니다.strings의 원소는 길이 1 이상, 100이하인 문자열입니다.모든 strings의 원소의 길이는 n보다 큽니다.인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다.  입출력 예strings n return["sun", "bed", "..
[프로그래머스] 이상한 문자 만들기 - python
·
CodingTest/programmers
문제 설명문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.  제한 사항문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.  입출력 예s return"try hello world""TrY HeLlO WoRlD"  입출력 예 설명"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 "Tr..
[프로그래머스] 약수의 개수와 덧셈 - python
·
CodingTest/programmers
문제 설명두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.  제한사항1 ≤ left ≤ right ≤ 1,000  입출력 예left right result131743242752    입출력 예 설명 입출력 예 #1다음 표는 13부터 17까지의 수들의 약수를 모두 나타낸 것입니다.수 약수 약수의 개수131, 132141, 2, 7, 144151, 3, 5, 154161, 2, 4, 8, 165171, 172따라서, 13 + 14 + 15 - 16 + 17 = 43을 return 해야 합니다. 입출력 예 #2다음 표는 24부터 ..
[프로그래머스] 정수 내림차순으로 배치하기 - python
·
CodingTest/programmers
문제 설명함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조건n은 1이상 8000000000 이하인 자연수입니다. 입출력 예nreturn118372873211 제출 코드def solution(n): answer = sorted(str(n), reverse=True) return int(''.join(answer))내림차순 정렬을 위해 reverse=True를 이용했다. 그리고 list 형태의 answer를 string으로 변경해주기 위해 join함수를 이용했다.처음에는 리스트 요소를 int로 만들어 실행했는데 TypeError: sequence..
[프로그래머스] 자연수 뒤집어 배열로 만들기 -python
·
CodingTest/programmers
문제 설명자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.제한 조건n은 10,000,000,000이하인 자연수입니다.입출력 예nreturn12345[5,4,3,2,1] 제출 코드def solution(n): answer = [] answer = list(map(int, str(n))) answer.reverse() return answermap함수를 사용해 각 자리를 list로 저장했다. 그 리스트를 resverse()를 사용해 뒤집어주었다. reversed(str(n))으로 처음부터 뒤집어진 문자열을 변경해줄 수도 있다.
[프로그래머스] 배열의 평균값 - python
·
CodingTest/programmers
문제 설명정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.제한사항0 ≤ numbers의 원소 ≤ 1,0001 ≤ numbers의 길이 ≤ 100정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.입출력 예numbers result[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]5.5[89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]94.0입출력 예 설명입출력 예 #1numbers의 원소들의 평균 값은 5.5입니다.입출력 예 #2numbers의 원소들의 평균 값은 94.0입니다. 제출 코드def solution(numbers): answer = 0 sum = 0..