코딩공부/Algorithm 7

포켓몬

# 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. # 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다. # 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택 # 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택..

오픈 채팅

프로그래머스 실력 체크 level 2. 오픈 채팅 소요시간 40분 문제 # 오픈채팅방 # 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. # 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. # [닉네임]님이 들어왔습니다. # 채팅방에서 누군가 나가면 다음 메시지가 출력된다. # [닉네임]님이 나갔습니다. # 채팅방에서 닉네임을 변경하는 방법은 다음과 같이 두 가지이다. # 채팅방을 나간 후, 새로운 닉네임으로 다시 들어간다. # 채팅방에서 닉네임을 변경한다. # 닉네..

인덱스 정렬하기

프로그래머스 실력 체크 level 1. 인덱스 정렬하기 문제 # 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. # 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1의 문자 u, e, a로 strings를 정렬합니다. # 제한 조건 # strings는 길이 1 이상, 50이하인 배열입니다. # strings의 원소는 소문자 알파벳으로 이루어져 있습니다. # strings의 원소는 길이 1 이상, 100이하인 문자열입니다. # 모든 strings의 원소의 길이는 n보다 큽니다. # 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. #..

가운데 글자 반환하기

프로그래머스 실력 체크 level 1. 가운데 글자 반환하기 문제 # 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. # 단어의 길이가 짝수라면 가운데 두 글자를 반환하면 됩니다. # s는 길이가 1 이상, 100 이하인 스트링입니다. # input ouput # abcde c # qwer we 나의 풀이 s = input() # input으로 문자열을 입력 받는다. if len(s) % 2: # 만약 s의 글자 수가 2로 나누었을때 0 이라면 print(s[len(s)//2]) # 문자열을 반으로 나누어 반환. else: print(s[(len(s)//2 -1) : len(s)//2+1]) # 짝수라면 가운데 2글자를 반환한다. 느낀점 문자열 인덱스의 슬라이싱을 다시 한번 상..