inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

2 - D 입력질문드립니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요. 2583번 문제에서 예제가 왜 5 7 3 0 2 4 4 1 1 2 5 4 0 6 2 이렇게 받는지 잘 모르겠습니다ㅠㅠ 그리고 for(int i = 0; i < k; i++) { cin >> x1 >> y1 >> x2 >> y2; for(int x = x1; x < x2; x++) { for(int y = y1; y < y2; y++) { a[y][x] = 1; } } } cin 으로 x1 y1 x2 y2 받는 줄 아래에 왜 x가 x2랑 엮이고 y가 y2랑 엮이는지 잘 모르겠습니다ㅠㅠ 문제 풀기전에 예제입력&예제출력이 왜 이렇게 나오나 먼저 좀 생각을 해보고 코드 작성하는데 한참을 들여다 봤는데 잘 이해가 안되니 도저히 감이 안와서 이렇게 여쭙니다.

  • c++
  • 코딩-테스트
메구밍 댓글 1 좋아요 0 조회수 343

이런방식으로 푸는게 더 깔끔한가요?

미해결

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

/* * 자신의 바로 앞 수보다 큰 수만 출력하는 프로그램을 작성하세요. 단, 첫 번째 수는 무조건 출력한다. */ function solution(integers:number[]): number[] { return integers.filter((int, index) => { if (index === 0) { return int; } if (int > integers[index - 1]) { return int; }; }); } console.log(solution([7,3,9,5,6,12]));

  • javascript
  • 코딩-테스트
ShinJuYong 댓글 2 좋아요 0 조회수 441

기본코드가 어디있나요?

미해결

입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]

강의에서 보여주는 기본코드가 어디있나요? 따라써야하는건가요? 포함된 파이썬 파일에는 답이 다 작성되어있어서요...

  • python
  • 코딩-테스트
용기있는 청년 댓글 1 좋아요 0 조회수 352

13번 0점...

미해결

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. #include <iostream> int arr[10]; int main() { //freopen("input.txt.txt","rt",stdin); char num[101]; int i; int tmp; int max = 0; int Smax; scanf("%s", &num); for(i=0; num[i]!= '\0'; i++) { tmp = num[i] - 48; arr[tmp]++; } for(i=0; i<10; i++) { if(arr[i]>=max) { max = arr[i]; Smax = i; } } printf("%d\n",Smax); return 0; } 왜 빵점만 나오는 거죠? 어디가 틀린 건가요ㅠㅠ?

  • c++
  • 코딩-테스트
@suyeonkoo 댓글 1 좋아요 0 조회수 263

[코테 적용] 반복문 강의에서

미해결

코딩테스트 [ ALL IN ONE ]

안녕하세요. [코테 적용] 반복문 강의에서 변수 Run하실때 오른쪽하단에 디버그 문양이 있는걸 누르시고 왼쪽상단에 변수에 대해 뜨는데 window에서 pycharm으로 해당 방법을 따라하고 싶은데 어떻게 해야 할까요? 감사합니다.

  • python
  • 코딩-테스트
  • 알고리즘
유현 댓글 1 좋아요 0 조회수 503

두 수의 합 O(n) 문제에 관한 질문입니다.

해결됨

입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]

강사님을 다른 곳에서 뵌 후에 이곳에서 뵈니 감회가 새롭습니다. 코딩 테스트를 파이썬으로 치뤄보고자 파이썬을 열심히 공부 중입니다. 당연히 자바도 빼놓지 않겠습니다. 두 수의 합 O(n) 문제에서 저는 이렇게 풀었는데, 강사님께서 푸신 것에 비해 시간복잡도가 어느정도 차이가 나는지 궁금합니다. 다음은 해당 코드 블럭입니다. def solution(nums, target): answer = [0] * 2 num_dict = dict() for x in nums: num_dict[x] = target - x if x in num_dict.values(): answer[0] = x answer[1] = target - x return sorted(answer) 감사합니다.

  • python
  • 코딩-테스트
최병호 댓글 1 좋아요 0 조회수 352

강의교안 30쪽 getline 질문이 있습니다.

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

string bufferflush; getline(cin, bufferflush); 이 부분에서 질문이 있는데요. 이 부분을 제가 이해하기로는 cin을 수행할 때 \n부분 전까지만 입력을 받고 변수에 할당한 후 \n은 그대로 cin 입력 버퍼에 남기 때문에 저걸 없애기 위해서 string bufferflush를 선언한 후 getline(cin, bufferflush)를 수행한다고 이해가 되는데요. 제가 알기로는 cin.ignore()도 입력 버퍼를 한 개 지우는 역할을 한다고 들었는데 그냥 cin.ignore()로 대체하면 두 줄짜리 코드를 그냥 간단하게 한 줄로 끝낼 수 있는데 이게 더 효율적이지 않나 싶어서 질문을 드립니다.

  • c++
  • 코딩-테스트
성우 댓글 1 좋아요 0 조회수 225

시간과 점수 변수를 넘길 때 선언과 동시에 더한 값을 넘기게 되면 어떻게 되나요 ??

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. static void DFS( int level, int time, int score, Exam[] arr) { if (time > m ) return ; if (level == n ) { if (time <= m ) { answer = Math. max ( answer , score); } } else { DFS(level+1, time+=arr[level].time, score+=arr[level].point, arr); DFS(level+1, time, score, arr); } } else 부분에 time+= arr[level].time 처럼 선언과 동시에 더한 값을 메소드에 넘기게 되면 time 값이 가장 마지막으로 선언 된 time 값으로 고정이 되어 이전 값으로 안 돌아오게 되나요 ?

  • java
  • 코딩-테스트
kwang0101 댓글 1 좋아요 0 조회수 304

22. 때때로 time limit

미해결

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

같은 코드인데, 한번은 array(배열)로, 한번은 vector로 두었습니다. array로 했을 때는 4번예제에서 time_limit이 났는데 vector로 했을 때는 다 success였습니다. 같은 경우엔 array가 더 빠른거 아닌가요? 왜 이러죠 #include <iostream> #include <vector> int main(void) { int n, k, max, sum = 0; std::vector<int> tem(100001); scanf("%d %d", &n, &k); tem[0] = 0; for (int i = 1; i <= n; i++) { scanf("%d", &tem[i]); sum += tem[i]; if (i == k) max = sum; else if (i >= k) { sum -= tem[i - k]; if (sum > max) max = sum; } } printf("%d", max); return 0; } #include <iostream> int main(void) { int n, k, max, sum = 0; int tem[100001]; freopen("input.txt", "rd", stdin); scanf("%d %d", &n, &k); tem[0] = 0; for (int i = 1; i <= n; i++) { scanf("%d", &tem[i]); sum += tem[i]; if (i == k) max = sum; else if (i >= k) { sum -= tem[i - k]; if (sum > max) max = sum; } } printf("%d", max); return 0; }

  • c++
  • 코딩-테스트
hj 댓글 1 좋아요 0 조회수 274

어떤 부분이 오답인지 궁금합니다

해결됨

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

import java.io.*; public class Main { public int solution(int n) { int answer = 0, sum = 0, lt = 0; for (int rt = 0; rt <= n/2+1; rt++) { sum += rt; if (sum == n) answer++; while (sum >= n) { sum -= lt++; if (sum == n) answer++; } } return answer; } public static void main(String[] args) throws IOException { Main main = new Main(); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); System.out.print(main.solution(n)); } } 따로, n/2+1 크기만큼의 배열을 생성해주지 않는 풀이인데, 어느 부분이 잘못되서 오답처리가 되는 것인지 잘 모르겠습니다.

  • java
  • 코딩-테스트
재영 댓글 1 좋아요 0 조회수 281

pushback과 dy,dx 질문입니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요. 질문 하나가 있습니다. adj[0].push_back(1); adj[0].push_back(2); adj[0].push_back(3); 만약 위 코드 처럼 push_back 해준다고 가정했을 때 int dy[] = {-1,0,1,0}; int dx[] = {0,1,0,-1}; 위 dy dx코드를 해줄 필요가 없는건가요? 연습할 때 .push_back(i)로 하다가 dfs bfs연습문제 풀 때 dy dx가 나와서 뭐지? 했습니다. 어느 상황에서 맨위 코드블럭처럼 해줘야 하는지 아래 코드블럭처럼 하는지 잘 분간이 안되서 이렇게 질문드립니다. 감사합니다. ps. 5 5 1 1 0 0 1 0 0 1 1 0 0 1 0 0 1 이런식의 예제입력이 주어지면 push_back안 하고 dy dx만 해주면 되는걸까요?

  • c++
  • 코딩-테스트
메구밍 댓글 1 좋아요 0 조회수 226

1-K 질문

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강사님. 이런 느낌으로 팰린드롬 변환을 구현해봤습니다. 사실 문자열 최대길이가 50이라서 시간복잡도 문제는 없을거라 생각하는데요. 삽입을 사용안하고 풀어보려고 했는데 reverse도 결국 O(N)이라서 유의미한 차이는 없는거 같습니다. 실제로 중간 삽입, reverse도 중간부분을 뒤집는거라 같은 시간복잡도가 예상되는데 맞을까요? http://boj.kr/6889e519af6742b9a6cda67803fbf013

  • c++
  • 코딩-테스트
체스터 댓글 1 좋아요 0 조회수 356

섹션5 연속부분수열1 (Two Pointers Algorithm) 질문있습니다.

미해결

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

강사님이 작성해주신 코드를보면 for문안에 while문을 돌려서 시간복잡도가 O(n^2) 아닌가요? 이렇게하면 시간복잡도가 O(n)이라서 아래의 코드가 더 좋은것 아닌가요?

  • javascript
  • 코딩-테스트
jinho Jang 댓글 2 좋아요 0 조회수 309

8주차 개념 강의 중 질문입니다.

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

강사님 안녕하세요, 8주차 개념강의 중 질문입니다. [알고리즘 강의] 8주차. 펜윅트리와 최단거리.. : 네이버블로그 ( naver.com ) 강의 노트 웹페이지에 2번째 그림에서, "2~8 까지의 최소인덱스 3번째 4번째 6번째 인덱스만 비교해서 최소 인덱스를 반환" 이라는 말이 잘 이해가 안되어서요. 그림상 파란 화살표 표시한 것이 3,4,6 인덱스를 의미 하는 것인지 그리고, 3,4,6째 인덱스를 비교한다는 것이 왜 필요한 것인지 궁금합니다. 제가 이해한 것은 2~8 까지의 최소 인덱스는 Level 1 에 저장된 Index 3 만 확인하여 Index 3 에 위치한 "1" 이 최소값인 것으로 이해를 했거든요. 강의 노트 웹페이지에서 5번째 그림에서, 파랑 노드를 만들면 된다고 갑자기 설명을 하시는데, (강의 3:03 구간) 그림상 주황색 노드(3,4,10,11)의 의미, 파랑색 노드(1,2,3,4)의 의미에 대한 안내도 없고... 그림에 표시된 화살표도 어떤 연산이 수행되었고, 화살표로 연결된 두 노드의 관계에 대한 설명도 없어 이해가 되지 않습니다. 관련 내용 상세 설명 좀 다시 부탁드리겠습니다.

  • c++
  • 코딩-테스트
Kyoung Jun Kim 댓글 1 좋아요 0 조회수 457

40번 교집합 문제

미해결

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

#include <iostream> using namespace std; int main() { int i, j, tmp, a[30001],a1, b[30001],b2, c[30001], cnt=0; cin >> a1; for (i = 0; i < a1; i++) { cin >> a[i]; } cin >> b2; for (i = 0; i < b2; i++) { cin >> b[i]; } for (i = 1; i < a1; i++)//a { tmp = a[i]; for (j = i - 1; j>0 ; j--) { if (a[j] > tmp) { a[j + 1] = a[j]; } else { break; } //조건에 안맞으면 바로 밑으로 넘어가게 해야한다. } a[j + 1] = tmp; } for (i = 1; i < b2; i++)//b { tmp = b[i]; for (j = i - 1; j > 0; j--) { if (b[j] > tmp){ b[j + 1] = b[j]; } else { break; } } b[j + 1] = tmp; } for (i = 0; i < a1; i++) { for (j = 0; j < a1; j++) { if (a[i] == b[j]) { c[i] = a[i]; cnt++; } } } for (i = 0; i < cnt; i++) { cout << c[i]; } return 0; } 안녕하세요 선생님 제가 삽입정렬 방식으로 하고 코들르 구현하였는데 출력은 -로 나옵니다. 어디서 잘못된거인지를 못찾겠어서 질문 드립니다.

  • c++
  • 코딩-테스트
sang ji Choi 댓글 1 좋아요 0 조회수 362

4-H 성곽문제 dfs 매개변수 중 cnt는 없어도 되는거 아닌가요??

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

이미 전역변수로 cnt를 선언 했는데 매개변수로 넣어서 사용해야하는 이유가 있을까요? 다른 건 이해했는데 이부분은 어떤건지 궁금하네요

  • c++
  • 코딩-테스트
parkjuseung0313 댓글 1 좋아요 0 조회수 385

3-D 뭐가 틀렸는지 모르겠습니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

예제는 정답이 맞는데, 제출하면 틀렸다고 나옵니다. 어디가 틀렸는지 모르겠습니다. http://boj.kr/b61061763b9a4449ab7c47ebf5a2d130 감사합니다.

  • c++
  • 코딩-테스트
seokjung.kim 댓글 1 좋아요 0 조회수 342

바둑대회 PDF답/ 정답코드 답이 다릅니다 ㅠ

미해결

자바 코딩테스트 - it 대기업 유제

바둑대회 answer=10000000; 의 위치가 PDF 와 정답코드가 서로 다릅니다. 위치가 서로 달라도 정답은 일치할 줄 알았는데 정답이 다르게 나옵니다. 왜 그럴까요 ㅠ

  • java
  • 코딩-테스트
거니짜응 댓글 1 좋아요 0 조회수 378

0주차 재귀함수

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

재귀함수를 사용하면 마치 DFS처럼 사용이되는데, f(4)에서 f(3)과 f(2)중 둘중 아무거나 먼저 호출되어도 상관이없는거 아닌가요? 어떠한 기준으로 f(3)이 먼저 호출되는지 궁금합니다..!

  • c++
  • 코딩-테스트
sangyunpark99 댓글 3 좋아요 0 조회수 501

어디가 잘못된 것인지 모르겠습니다.

해결됨

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

import java.io.*; import java.util.*; public class Main { private int solution(int n, int[][] arr) { int[] cntArr = new int[n]; int answer = 0, max = 0; for (int i = 0; i < n; i++) { int cnt = 0; for (int j = 0; j < 5; j++) { boolean flag = false; int cur = arr[i][j]; for (int k = 0; k < n; k++) { if (i == k) continue; int compare = arr[k][j]; if (cur == compare) { flag = true; break; } } if (flag) cnt++; } cntArr[i] = cnt; max = Math.max(max, cntArr[i]); } for (int i = 0; i < n; i++) { if (cntArr[i] == max) { answer = i+1; break; } } System.out.println(Arrays.toString(cntArr)); return answer; } public static void main(String[] args) throws IOException { Main main = new Main(); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int[][] arr = new int[n][5]; StringTokenizer st; for (int i = 0; i < n; i++) { st = new StringTokenizer(br.readLine()); for (int j = 0; j < 5; j++) { arr[i][j] = Integer.parseInt(st.nextToken()); } } System.out.print(main.solution(n, arr)); } } 첫 번째 순회문(i)은 학생 번호를, 두 번째 순회문(j)은 학년 번호를, 세 번째 순회문(k)은 학생 번호를 순회하기 위한 for문입니다. 모든 학생을 일일이 순회하는데, 해당 학생이 위치한 학년의 학생들과 k 순회문으로 비교하는 로직입니다. (해당 학생이 위치한 학년을 비교하는, 열을 기준으로 비교하는) cntArr 배열에 각 학생의 같은 반인 횟수를 집어넣고, 최종적으로 그 중 가장 큰 값인 인덱스를 찾아 +1을 한 값을 반환합니다. 이 풀이법이 틀린 이유가 무엇인가요..ㅜ

  • java
  • 코딩-테스트
재영 댓글 2 좋아요 0 조회수 475

인기 태그

인프런 TOP Writers

주간 인기글