문제 직선 상에 일렬로 탑이 나열되어 있습니다. 이 탑에는 서로 신호를 송/수신할 수 있는 장치가 달려있습니다. 신호는 한 방향으로만 흐르며, 신호를 송신한 탑보다 높은 탑에서만 수신합니다. 또한, 한 번 수신된 신호는 다른 탑으로 송신되지 않습니다. 맨 왼쪽부터 순서대로 탑의 높이를 담은 배열 heights가 매개변수로 주어질 때 각 탑이 쏜 신호를 어느 탑에서 받았는지 기록한 배열을 return 하도록 solution 함수를 작성해주세요. 제한 사항 heights는 길이 2 이상 100 이하인 정수 배열입니다. 모든 탑의 높이는 1 이상 100 이하입니다. 신호를 수신하는 탑이 없으면 0으로 표시합니다. 입출력 예제 heights return [6,9,5,7,4] [0,0,2,2,4] [3,9,9,3..
문제 스파이가 가지고 있는 옷을 번갈아가면서 입으려고 한다. 이 옷들을 번갈아 가면서 입을 수 있는 경우의 수를 구하기 제한사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. clothes의 모든 원소는 문자열로 이루어져 있습니다. 모든 문자열의 길이는 1 이상 20 이하인 자연수이고 알파벳 소문자 또는 '_' 로만 이루어져 있습니다. 스파이는 하루에 최소 한 개의 의상은 입습니다. 입출력 예제 clothes = [["yellow_hat", "headgear"], ["blue_sunglasses", "eyewear"], ["green_turban", "headgear"]] ..
KNN 공부하면서 plot을 이용해 가장 accuracy가 높은 k값을 찾는 작업을 하던 중에, from sklearn.neighbors import KNeighborsClassifier import pandas as pd result = {} for i in range(1,150,2): model = KNeighborsClassifier(n_neighbors=i) model.fit(tr,tr_lb) score = model.score(ts,ts_lb) result[i] = score pd.DataFrame(result) # ValueError: If using all scalar values, you must pass an index 한참을 생각했다.. 어떻게 해결할까..? 혹시라도 Dictionary..
문제 전화번호 목록에 있는 원소들 중에서 특정 원소로 시작하는 번호 (접두번호) 가 있는지 확인한다. 만약, 어떤 번호가 다른 번호의 접두 번호인 경우가 있으면 false를 그렇지 않으면 true를 return 제한사항 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 입출력 예제 phone_book = ["119", "1190223", "5939130"] : False phone_book = ["123", "456", "789"] : True phone_book = ["12", "123", "1235", "567", "88"] : False 풀이 def solution(phone_book): answer = False data = lis..
문제 마라톤에 참가한 선수의 이름이 담긴 배열 : participant 마라톤에 완주한 선수의 이름이 담긴 배열 : completion 을 입력 값으로 받아 완주하지 못한 선수의 이름을 Return하는 Solution 함수를 생성하기 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 풀이 def solution(participant, completion): from collections import Counter answer = Counter(list(participant))-C..
# 10953 A+B while True: input_data = list(map(int,input().split(' '))) if input_data[0] == 0 and input_data[1] == 0: break else: print(input_data[0] + input_data[1]) # 10951 A+B import sys while True : try : a, b = map(int, input().split()) print(a+b) except : break # 1110 더하기 사이클 import math N = int(input()) n = str(N)[:] cn = 0 while True: a = math.floor(N/10) b = N%10 c = (a+b) % 10 N = int(s..