묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
15강 12. 암호
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드에서 마지막에 s=s.substring(7);이 있는데(9번째줄) i가 for문에서 n-1까지 갔을 때 뒤에 남은 String이 없는데 index out of bound exception이 안나는 이유가 무엇일까요?코드 똑같이 했다고 생각했는데(똑같지 않으니 에러가 나겠지만요 ㅠㅠ) 해당 에러가 떠서 여쭤봅니다. 혹시 이 에러가 떴다면 어느 부분에서 차이가 나는 걸까요?
-
해결됨카카오 코테 6주 합격! 실전 파이썬 코딩테스트
스스로 고민하고 답을 보지 않고 구현을 해보았는데요
# 1012 T = int(input()) dx = [0, 0, 1, -1] dy = [-1, 1, 0, 0] for _ in range(T): M, N, K = map(int, input().split()) graph = [[0] * M for i in range(N)] st = [] seen = set() # seen.add((0, 0)) for i in range(K): x, y = map(int, input().split()) graph[y][x] = 1 st.append([y, x]) cnt = 0 while st: cur = st.pop() for i in range(4): x = dx[i] + cur[0] y = dy[i] + cur[1] if not (0 <= x < N and 0 <= y < M): continue if (x, y) in seen: continue if graph[x][y] == 0: continue st.append([x, y]) seen.add((x, y)) if (cur[0], cur[1]) in seen: continue else: seen.add((cur[0], cur[1])) cnt +=1 print(cnt)값이 처음 구현 햇을때 제대로 안나오길래원래는 cur를 for i in range(4) 위에서 seen에 찍어줬었는데 -> 실패그래서 cur를 방점을 찍어주듯이 주변을 다 돌고 자신을 seen에 찍게 했더니 통과가 되서혹시 코드에 조언해주실 수 있는지 질문드립니다!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
오늘 구매했는데 파이썬 자료구조 궁금한거 있으면 답변이 잘 될까요.
오늘 구매했는데 파이썬 자료구조 궁금한거 있으면 답변이 잘 될까요. 답으로 안될때는 줌으로도 알려주시면 감사하겠습니다!!! 좀 절실해서요
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
4. 단어뒤집기
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 명쾌한 강의 감사합니다.이 영상의 solution 함수에서 파라미터로 n이 들어가지만 실제로 쓰이지 않는 것으로 이해하였습니다. 그러면 1. solution 함수 파라미터에 n을 굳이 넣어야 할 필요가 있나요? 2. 만약 n을 사용하고 answer를 int[n]로 지정하면 될 것 같은데 그렇게 해도 괜찮을까요? 3. ArrayList는 길이가 정해져있는 배열에 비해 성능에 있어 불리하지는 않을까요? 만약 불리하다면 2로 푸는 게 좋을까 생각이 들어서요.
-
미해결개발 역량 + 자격증까지, Java로 PCCP 자격증 준비하기
실습권한좀 빨리주세요
실습 권한 부여를 위해 프로그래머스 회원 가입 후 섹션 1에서 아이디를 제출해 주세요. 이렇게 말하면 어떻게 알아듣나요
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
수업교재 링크 문의
안녕하세요! 수업 교재 링크에서 제목만 뜨고 코드나 내용 설명은 안뜨네요ㅠㅠ pdf로 열면 뜨는데 코드가 짤리게 나와서 드래그 복사를 해도 짤린 부분까지만 복사가 되요ㅜ 강의 영상에서처럼 강의 자료를 보려면 어떻게 해야 될까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
공부하는 방법 질문있습니다.
안녕하세요 큰돌님. 이제부터 1주차 강의 문제 파트로 들어가기 시작했습니다. 강의 보기 전에 혼자 풀어보려는데 이 문제는 어떤 알고리즘으로 풀어야지 생각은 드는데 C++ 지식이 부족하여 문제를 제대로 못 푸는 경우가 허다합니다.. 이러한 경우는 답을 보고 복습하고 나중에 다시 풀어보는게 맞을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
펜윅트리 개념강의 질문
8분 8초부터 rangeQuery(1, 4) 함수 관련해서 설명해주시는 부분이 이해가 잘 안돼서 질문 드립니다.그림 설명에서는 sum(4) - sum(1) 을 설명해주시는데 이거는 rangeQuery(1, 4) 와는 별개의 설명인 건가요? rangeQuery(1, 4) 를 실행하면 sum(4) - sum(1 - 1) 이 실행돼서 28이라는 값이 출력되는 것 같은데 별개로 이해하면 될까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
hi의 초기 최대값 설정
문제에 대한 고민은 아니고 접근법에 대한 고민이 있습니다..이진 탐색 문제를 풀 때 무지성으로long long hi = 1e15로 최대한 크게 잡고 들어가는데 이 부분을 저격할 수 있는 문제가 있나요?코딩테스트에서 위험한 생각인지 궁금해서 여쭤봅니다.
-
미해결SW 역량테스트 합격하기 A형 with C++ (Advanced Algorithm)
(반)시계 회전 함수의 N, M 처리 방식
안녕하세요, BOJ 16935번 문제를 풀던 중 시계 방향 회전(clockwise)과 반시계 방향 회전(counterClockwise) 함수의 구현 방식 차이에 대해 헷갈리는 부분이 있어 질문드립니다. (강의 6:22)// 시계 방향 회전void clockwise() { copyMAP(temp, MAP); int t = N; N = M; M = t; for (int r = 1; r <= N; r++) { for (int c = 1; c <= M; c++) { MAP[r][c] = temp[M + 1 - c][r]; } }}// 반시계 방향 회전void counterClockwise() { copyMAP(temp, MAP); int t = N; N = M; M = t; for (int r = 1; r <= N; r++) { for (int c = 1; c <= M; c++) { MAP[r][c] = temp[c][N + 1 - r]; } }}궁금한 점은, clockwise()에서는 temp[M + 1 - c][r]처럼 회전 전의 N, M 기준으로 접근하는거고, counterClockwise()에서는 temp[c][N + 1 - r]처럼 바뀐 후의 N, M을 그대로 사용하는 건가요?이 부분이 좀 헷갈려서 질문 드립니다. 감사합니다.
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
질문있습니다.
혹시 이런 유형에서 N 이 크면 ArrayList 를 사용해야하는데 2차원 배열 어레이 리스트 사용은 어떤식으로 하나요??
-
미해결코딩테스트 [ ALL IN ONE ]
linkedList - BrowserHistory 코드 질문
안녕하세요 linkedList에서 BrowserHistory 코드를 구현할 때저는 처음 linkedList 개념에서 생각했던 대로 linkedList + idx로 접근하는 방향으로 생각했습니다.# idx로 생각한 예시 # O(n) def insert(self, idx): current = self.head NewNode = Node() # insert하려는 앞 노드까지 for i in range(idx - 1): current = current.next NewNode.next = current.next current.next = NewNode그런데, BrowserHistory에선 linkedList + class 속성?(current)으로 풀이를 하신 것 같은데 맞을까요?문제 풀이할 때, visit을 할때마다 현재 idx를 global 변수로 저장해둬야 하나?라는 고민을 했어서 혹시 잘못 생각한 부분이 있는지 알려주시면 감사하겠습니다..!
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
오타가 있습니다.
1. 현재 학습 진도몇 챕터/몇 강을 수강 중이신가요?4-4강의 내용 중 오타가 있습니다.루트 노드와 맨 끝에 있는 원소를 교체하면 3 6 72 5 4 8이 되어야합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
코딩테스트 관련 질문입니다.
이번주 일요일에 삼성 계열사 코테를 치루고 왔는데요.삼성은 visual studio에서 개발을 해볼 수 있던데 #include<bits/stdc++.h> 를 입력하면 오류가 생기더라구요... 이럴땐 어떻게 해야되나요..?그래서 따로 visual studio에서 개발은 못하고 바로 삼성 코테 사이트에 입력을 하였었는데 해결 방법이 있을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-B 맞왜틀
http://boj.kr/261bd5fb77ea43a6ad0b166b642b8d51우선 문제 해설 보기 전에 스스로 생각해서 풀었는데 제 로직은 어느 부분에서 잘못된 것인지 모르겠습니다 ㅠ확인해주실 수 있을까요?
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
반복문 최소화하고 indexOf 사용해서 풀어봤습니다
export default function solution(arr) { let answer = 0; const m = arr.length; const n = arr[0].length; for (let i = 0; i < n; i++) { for (let j = i + 1; j < n; j++) { let cnt = 0; for (let k = 0; k < m; k++) { if (arr[k].indexOf(arr[0][i]) < arr[k].indexOf(arr[0][j])) cnt++; if (cnt === m) answer++; } } } return answer; }
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
공통원소 구하기 질문입니다.
해당 코드의 실패 예시가 결과 값이 5 999999999 1000000000 가 출력 되야 되는데 5만 출력 됩니다.위의 코드에서 flist, slist를 ArrayList로 선언 했는데 이를 int[]로 변경 후 동작을 하면 정상적으로 동작이 됩니다.int[]로 선언 했을 때랑 ArrayList로 선언 했을때 차이가 있는건지 제가 while문안에 비교를 잘못한건지 모르겠어서 질문드립니다..
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
9. 1-6 시간복잡도 계산하기
시간 복잡도 구할때 이미지에서 빨간색 박스 친 대입 연산자는 왜 빠진건가요?
-
해결됨김영한의 실전 자바 - 중급 2편
해시 인덱스를 사용하는 경우 데이터 저장 평균 시간 복잡도에 대해 질문
관련 내용:강의: 55. 해시 알고리즘6 - 해시 충돌 구현 21:56pdf: 6. 컬렉션 프레임워크 - 해시(Hash) 24P 정리 부분해시 인덱스를 사용하는 경우 데이터 저장을 할 때 평균 시간복잡도가 O(1)이라고 설명. 의문점private static void add(LinkedList<Integer>[] buckets, int value) { int hashIndex = hashIndex(value); LinkedList<Integer> bucket = buckets[hashIndex]; //O(1) if (!bucket.contains(value)) { //O(n) bucket.add(value); } }위와 같이 항상 bucket이 contains(..) 메서드를 호출하여 중복된 값이 있는지 확인하므로 O(n)의 시간 복잡도가 소요됩니다. 그래서 저는 항상 데이터 저장을 할 때는 O(n)으로 계산해야 한다고 생각했습니다. 강의에서 말씀하신 내용은 이상적으로 해시 충돌이 별로 발생하지 않는 상황(그리고 구체적인 구현은 신경쓰지 않는 상황)이라 가정하고 O(1)이라고 한 것일까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-C 질문드려요
동적 계획법 알고리즘에서 사용되는 테이블을 캐시라고 말할께요.만약, dp[y][x]에 값을 최초로 갱신하고 이후에 또 다른 경로 B로 (y,x)에 도달하게 되면 바로 dp[y][x]를 가져다 사용하게 될 겁니다.하지만 만약에 저장했던 최초로 연산했던 최장 경로와 다른 경로 B가 겹치게 된다면 캐시값을 사용하지 않고 직접 연산했을 상황에서는 무한 loop가 발생한것이니, 이런 상황 때문에라도 위치 정보만으로 캐싱하면 안되는거 아닌가요? 그렇게 생각해서 저는 처음에 위치 정보 뿐만 아니라 방문한 정점 정보도 key 값으로 사용하려다 실패하고 큰돌님 강의를 봤네요.애초에 이런 일이 발생하지 않아서 위치 정보만으로 캐싱해도 되는 것인지, 아니면 제 생각이 잘못되었는지 궁금합니다.