목록분류 전체보기 (52)
0과 1 사이
오랜만에 다이나믹 프로그래밍 엇! 답이 맞는줄 알았는데 잘보니 틀리다. won[i]는 i원을 만들 수 있는 코인의 최소 개수를 저장해야하는데, 아래의 경우... 최소 개수를 저장하지 않는다는 문제가 있다. 초기화할때 -1로 모두 저장해버려서 최소값을 저장하게 되면 그냥 -1이 저장되기 때문이다.. import sys n, m = map(int, sys.stdin.readline().rstrip().split()) coin = [] coin.sort() for _ in range(n): coin.append(int(sys.stdin.readline().rstrip())) won = [-1] * (m+1) for i in coin: if i
어라.. 소프트웨어 마에스트로 13기를 지원했는데 1차 코딩테스트가 붙었다. 기대도 안하고 있었는데 깜짝 놀랐네... 여튼 그래서 신나서 쓰는 후기 총 8문항이 있었고, 웹 쪽은 거의 알지 못해서 html, css는 백지로 냈다. sql 1문제, 알고리즘 4문제 합쳐서 5문제 풀었던것 같다. 알고리즘은 어렵지는 않았지만 시간이 너무 부족해서 2문제는 거의 건들지도 못했던것 같다. 그래서 별로 기대는 안했는데.. 1차 통과! 2차도 붙길 바란다. —2차는 sk코딩테스트와 겹쳐서 응시하지 못했다.ㅜ
https://programmers.co.kr/learn/courses/30/lessons/92344 코딩테스트 연습 - 파괴되지 않은 건물 [[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5],[5,5,5,5,5]] [[1,0,0,3,4,4],[1,2,0,2,3,2],[2,1,0,3,1,2],[1,0,1,3,3,1]] 10 [[1,2,3],[4,5,6],[7,8,9]] [[1,1,1,2,2,4],[1,0,0,1,1,2],[2,2,0,2,0,100]] 6 programmers.co.kr 이 문제.. 구현은 간단한데 효율성 통과하기가 정말 어렵다. 남은 3문제중에 그나마 간단한 것 같아서 도전했으나 .. 한시간동안 고민해도 해결방법을 찾지 못함.. 정확도는 모두 통과했다. 그러고나서 효율성을 ..
https://programmers.co.kr/learn/courses/30/lessons/92342 코딩테스트 연습 - 양궁대회 문제 설명 카카오배 양궁대회가 열렸습니다. 라이언은 저번 카카오배 양궁대회 우승자이고 이번 대회에도 결승전까지 올라왔습니다. 결승전 상대는 어피치입니다. 카카오배 양궁대회 운영위원 programmers.co.kr 가장 문제였던 양궁 문제.... 분명 열심히 풀었는데 10개 테스트케이스에서 5개만 통과함. 주어진 테스트1과 테스트3도 통과하지 못했다. 조건 하나를 깜빡했다. 어피치와 라이언이 같은 개수의 화살을 맞힌 경우 어피치가 점수를 가져간다. 이 조건을 빼먹음.. 코드 수정하니까 테스트케이스 23번만 통과하지 못했다. 그런데 answer과 real_answer라는 배열을 ..
https://programmers.co.kr/learn/courses/30/lessons/92341 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 풀었지만 복잡하게 푼 문제.. 조금 간단히 풀 방법을 찾아봐야겠다. 처음 작성한 코드 from datetime import datetime def solution(fees, record..
https://programmers.co.kr/learn/courses/30/lessons/92335 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 이 문제는 옛날에 소수 판별 알고리즘을 구현했던 것이 기억나서 쉽게 풀었다. import math def change(n, k): #k 진수로 변환. 결과는 string string = '' q, r = divmod(n, k) if q == 0 : return string + str(r) else : retur..
https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 이 문제는 어렵지 않았다. 간단하게 풀었지만 풀면서 어.. 이거 해시 쓰는거네? 좀더 간단하게 풀수 없나 하는 생각이 들었다. 실제 시험 보는것처럼 5시간동안 7문제 풀었어서 풀자마자 넘어갔는데 다 풀었으니깐~~ 이제 코드 개선을 해보려고 한다. 처음 작성한 코드 원래 코드도 나쁘지는 않지만, id 명단을 입력하는 배열 id_list, id 별로 신고한 ..
음... 내 코드의 문제가 뭘까. bfs 함수를 호출하면 count값만 리턴하고, 배열은 그대로 두어야하는데.... 배열도 바꿔서 저장이 된다. 왜지..? 지역변수이기 때문에 함수를 호출할 때마다 배열에 저장된 값은 사라지는게 아닌가? 고민이 필요하다. from collections import deque n, m = map(int, input().split()) def bfs(mapp): count = 0 x = mapp q = deque() for i in range(n): for j in range(m): if x[i][j] == 2: q.append([i,j]) while q: i,j = q.popleft() x[i][j] = 2 if i + 1 < n: if x[i+1][j] == 0: q.ap..