전체 글

지옥에서 올라온 강인한 프로그래머
이 포스팅은 책을 바탕으로 공부하기 위하여 작성되었습니다. https://search.shopping.naver.com/book/catalog/32462662534?cat_id=50010766&frm=PBOKPRO&query=%EB%AA%A8%EB%91%90%EC%9D%98+%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC&NaPm=ct%3Dl89v15dc%7Cci%3Dfeac2bbe3a49bf557b7cd3a1ba29fe8e962ec2aa%7Ctr%3Dboknx%7Csn%3D95694%7Chk%3Df6ceaa8177eea3759744b0c4fe6e29999a97aa03 모두의 네트워크 : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 물리..
def solution(n,a,b): #n명, => n//2개의 토너먼트 (홀수는 문제에서 고려하지 않음) #1, 2, 3, 4, 5, 6, 7, 8 같은 게 있다고 한다면? 4번의 토너먼트가 되며, 번호는 토너먼트 수 대로 다시 생성 1, 2, 3, 4 #즉 1-2, 3-4, 5-6, 7-8 을 1, 2, 3, 4로 퉁치게 된다? 2를 나눴을 때, 몫과 나머지를 이용해도 될 듯 #아무튼 a와 b가 연속된 숫자이면서, 같은 토너먼트 조가 될 때 정답. tournament = n if a > b: a, b = b, a cnt = 0 while tournament != 0 : #새 토너먼트 배정 tournament = tournament//2 #라운드 + 1 cnt +=1 #각각 이겼을 때의 배정값 a = ..
def solution(n, words): answer = [] cnt = 0 #몇 번 돌았는지 세서, 몫으로 몇 번째 차례인지, n+1 모듈러 연산으로 몇 번째 사람이 했는지 알아낸다. turn = 0 check_words = set() first_alph = words[0][0] for word in words: #이미 쓴 word를 썼을 경우 if word in check_words: cnt += 1 break #앞의 word의 마지막 문자랑 현재 word의 첫번째 문자랑 다를 경우 elif word[0] != first_alph: cnt += 1 break #첫 번째 word일 경우, 마지막 문자가 첫 번째 문자랑 같을 경우 else: check_words.add(word) first_alph =..
박준영_
차가운 0과 1의 임페르노