- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 공유받은 노션에서 문제가 있는거같지 않은데 강의에서 풀이하는 문제들은 어디서 따로 볼 수 있나요?
안녕하세요, 큰돌님. 정답 코드에서는 문자열로 비교하였으나 숫자로 직접 비교하는 것도 직관적으로 이해하는 것에 괜찮을 거 같아 코드를 작성해보았습니다. 그런데 숫자를 바꾸고 백터에 옮기는 과정 중에 오류가 생겼는지, 더 많은 숫자들이 출력이 됩니다. 이유가 무엇이고 어떻게 고쳐야 하는지 알 수 있을까요? http://boj.kr/365467e927da44928353bd48a3dbbe56 아직 실력이 부족하여 질문이 많은 점 죄송합니다. 나름 오랜시간 고민하였습니다. 백터 대신 배열을 크게 잡아 문제를 풀려고 하였는데, 테스트 케이스의 출력은 나오나 이 역시 틀렸다고 나옵니다. 이유가 무엇일까요? http://boj.kr/50f1df6dee5f423ba7f4bf219d2fdd1c
안녕하세요 정점이 0, 1, 2, 3 순차적으로가 아닌 0, 11, 222, 3333, 4444, 55555, 666666, 1234567890, ~ 이런식으로 중간은 비어있고 값만 크게 들어 오는 경우는 어떤식으로 해결할 수 있을까요?? ex) const int V = INT_MAX; vector<int> adj[V]; adj[0].push_back(11); adj[1234567890].push_back(0);
안녕하세요 선생님 나름 코드를 짜고 테스트케이스를 통과하여 기쁜 마음으로 채점을 해봤는데 "틀렸습니다!" 라고 나오는데 혹시 왜 틀렸는지 코드 한 번 봐주실 수 있나요?? http://boj.kr/faef0eba568e47b3b9ff7e9aaf361e69 (링킹 피드백 적용!!)
안녕하세요? 강의 자료 문의 드립니다. 0주차 강의는 알고리즘 교안.pdf 통해서 참고 잘 했는데요, 1주차 와서 시간 복잡도도 자료를 활용하시는 것 같은데 관련 자료가 없는 것 같아 문의 드립니다. 따로 제공을 하실까요? 아니면 알고리즘교안.pdf만 제공하시는 걸까요?
import sys n,k=list(map(int,input().split())) li=list(map(int,input().split())) li.sort(reverse=True) # li=list(set(li)) answer = 0 tmp = 1 for i in range(len(li)-2): for j in range(i+1,len(li)-1): for l in range(j+1,len(li)): if k != tmp: tmp+=1 else: answer += li[i] + li[j] + li[l] print(answer) sys.exit() 한번에 list(set)하는식으로 해봤는데 이런식으로 코드 작성해도될까요?
안녕하세요, 해당 문제를 풀다가 질문 사항이 있어서 질문드립니다. import sys sys.stdin = open("C:\\Study\\algorithm\\input.txt", "r") def DFS(L, sum, time): global res if res[0] <= time <= m: if res[1] < sum: res[0] = time res[1] = sum for i in range(1, n+1): if time > m: break if ch[i] == 0: ch[i] = 1 DFS(L+1, sum+ls[i-1][0], time+ls[i-1][1]) ch[i] = 0 if __name__ == "__main__": n, m = map(int, input().split()) ls = [] ch = [0] * (n+1) res = [0] * 2 for i in range(n): a, b = map(int, input().split()) ls.append([a, b]) DFS(0, 0, 0) print(res[1]) 위 코드를 돌려보면 테스트 케이스 1,2번은 풀어지나 3번부터 timeOut이 뜨네요 (무한 루프가 도는거 같습니다) 이전 문제에서 알려주신 비슷한 방식으로 해당 문제를 1~n까지 DFS(n)전체를 탐색해서 최적의 점수를 도출할려고 했는데, 해당 유형의 문제가 나오면 이러한방식으론 해결이 불가능한걸까요?
function solution(arr) { let answer = arr; for (let i = 0; i < arr.length; i++) { for (let j = i + 1; j < arr.length; j++) { if (answer[i] > answer[j]) { let tmp = answer[j]; answer[j] = answer[i]; answer[i] = tmp; } } } return answer; } let arr = [13, 5, 11, 7, 23, 15]; console.log(solution(arr)); 강의를 한번 다 보고 다시 안보고 푸는 중인데, 이렇게 해도 답은 나오더라구요, 이것도 선택정렬이 맞는건가요?
강사님 안녕하세요, 5-P 문제를 먼저 풀고 예제에서는 모두 통과 한 것을 확인하고 제출해보니 94% 에서 틀렸다고 항상 나오네요... 저는 bitmask 활용하여 문제를 풀긴했습니다만 무엇이 틀렸는지 감이 오지를 않습니다. 같은 문제에 대한 다른 질문 글을 보니 90% 대에 틀렸다고 나오는 것이 있긴했는데 제 경우도 같은 경우일까요? 일부 주석 포함 제 코드는 다음과 같습니다. http://boj.kr/8aa660e3d6fb407e81d7902b94b2d5a5
안녕하세요 큰돌님! 5-G문제에서 배열의 소수를 만드는 크기를 4000004로하면 틀렸습니다가나오고 4000001로하면 맞는데 이유를 잘 모르겠습니다. 혹시 어떤이유로 틀리는 걸까요? 소수를 확인하는 것은 4000001이던 4000004이던 상관없지 않나요? http://boj.kr/b9d1006666d949a09380a1dcd8f6b833
안녕하세요. 바둑이 승차(DFS) 질문입니다. 해당코드에서 성능을 더 향상시킬수있지 않을까 해서 질문드립니다. 강사님이 작성하신 코드에서 if(L==N) 전에 if(sum==C)가 나오면 더이상 코드 진행을 하지 않아도 되는거 아닌가요? 그 때 flag값을 하나 추가해서 모든 재귀를 return 시키는 방법을 쓰면 더 좋을것같은데 제 생각이 맞나 궁금하네요. 답변 부탁드리겠습니다. 감사합니다.