월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문있습니다.
정말 너무 만족하며 수업 잘 듣고있습니다. 코딩학원에서는 기초,기본 부분을 제외하고 수업을 하는 느낌이 있어서 열심히 한다고 해도따라가지 못하는경우가 많았는데, 선생님 수업을 들은 이후부터 기초, 기본을 채울수 있어서 자신감도 생기고 알고리즘에 흥미도 느껴지네요. 그래서 드리는 말씀인데 혹시 이 강의보다 난이도가 높은 알고리즘 수업을 c ++로 촬영하실 계획은 없으신가요? 꼭 수강하고싶습니다.
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
맥북 유저는 웁니다ㅠ
맥북 쓰는데 환불해야 할까요? ㅠㅠ 아쉽네요 결제했는데
- 해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
풀이에 대한 질문 있습니다!
항상 강좌 잘 듣고 있습니다. 1년차 개발자인데 알고리즘이 너무 약하고 항상 코딩 테스트 때문에 걱정이였는데. 이렇게라도 시작할수 있고 꾸준히 공부할 수 있어서 다행이라고 생각합니다. 저 같이 알고리즘을 힘들어하는 많은 분들이 도움을 받을 수 있도록 더 많은 강의 만들어 주시면 감사하겠습니다. 늘 감사합니다. --------------------------------------------------------- 강의를 듣기에 앞서 제 스스로 채점을 해보고 강의를 듣고 있습니다. 그런데 이게 테스트 케이스 5개를 success 받아 100점이면 그래도 나름대로 괜찮은 로직을 구현했다고 볼 수 있을까요? 처음에는 시간 제한으로 통과하지 못했지만 조금 효율적으로 고치긴 했는데 강사님처럼 깔끔?한 방법은 아닌거 같아서요! 어쩌면 비효율적일수도 있구요! ------------------- #include <iostream> using namespace std; int arr[100000]; int main() { int i, j, k, cnt = 0, N, max = -2147000000, flag = 0; scanf("%d", &N); for(i = 0; i < N; i++) { scanf("%d", &arr[i]); } for(i = 0; i < N; i++) { for(j = i + 1; j < N; j++) { cnt = 1; flag = 0; for(k = i; k < j; k++) { if(arr[k] > arr[k + 1]) { flag = 1; break; } cnt++; } if(flag == 1) break; if(max < cnt) max = cnt; } } printf("%d", max); return 0; } -------------------------------- 반복문이 3번돌아서 별루인거 같긴 합니다..
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
이 코드는 대문자가 숫자로 출력되는데 이유가 뭔가용?
#include <iostream> #include <string> using namespace std; int main() { char Word[101]; gets(Word); for(int i = 0; Word[i] != '\0'; i++) { if(Word[i] >= 65 && Word[i] <= 90) cout << Word[i] + 32; else if(Word[i] >= 97 && Word[i] <= 122) cout << Word[i]; } return 0; }
- 해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
segmentation error 질문입니다.
0으로 나누거나 할당된 배열의 다른범위에 참조하면 생기는 에러라고 알고 있습니다. 선생님의 소스코드와 로직은 똑같지만 저는 char 배열말고 c++, string으로 std::cin입력받았습니다. 선생님 19번째 줄과 같이 for(i = pos + 1; a[i] != '\n'; i++) 을 하였더니 이부분에서 에러가 발생했습니다. 그래서 for(i = pos + 1; i < a.length(); i++)로 하였더니 값이 구해졌습니다. 실행환경은 MAC OS, gcc c++14 입니다. 왜그런지 알 수 있을까요?ㅠㅠ 그냥 컴파일러가 달라서 그런건가요? #include<iostream> using namespace std; int main(){ freopen("input.txt", "rt", stdin); int c = 0, h = 0, pos, res = 0, i; string a; cin>>a; if(a[1] == 'H'){ pos = 1; c = 1; }else{ for(i = 1; a[i] != 'H'; i++){ c = c * 10 + (a[i] - 48); } pos = i; } if(a[pos + 1] == '\n') h = 1; else{ for(i = pos + 1; a[i] != '\n'; i++){ h = h * 10 + (a[i] - 48); } } res = c * 12 + h; cout<<res<<"\n"; return 0; }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
전역변수 지역변수 차이때문에 질문 드립니다.
안녕하세요 선생님. int cnt 배열이 지역변수로 main() 안에 있으면, 채점할 때 5개중에 4개만 통과되더라구요. (아래 코드 처럼요.) 선생님 코드처럼 int cnt 배열이 전역변수로 main() 밖에 위치해야만 하는 이유를 알고 싶습니다. 감사합니다. #include <stdio.h> // 9. 모두의 약수 (제한시간 1초) int main(int argc, char** argv) { //freopen("input.txt", "rt", stdin); int input=0, i=0, j=0; int cnt[50001]; scanf("%d", &input); for(i=1; i<=input; i++){ for(j=i; j<=input; j=j+i){ cnt[j]++; } } for(i=1; i<=input; i++){ printf("%d ", cnt[i]); } return 0; }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
다이나믹 프로그래밍 질문
김태원 선생님, 다이나믹 프로그래밍이 설명 들을때는 알것 같더니 (특히: 네트워크선 짜르기 몇번을 봤습니다. ) 설명을 들으면 당연한것 같은데 그러다, 새로운 문제를 보면 또 다시 알뜻 말뜻 상당히 알쏭 달쏭 합니다. 그러면, 다아나믹 프로그래밍은 수학에서 말하는 경우의수 수열로 생각 하면 되나요?
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
코드질문
if(Count(mid, x)>=m){ res=mid; lt=mid+1; } else rt=mid-1; 이부분에서 res mid는 else부분에 들어가도 상관이없을까요?
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
operator< 오버로딩 때...
const 를 파라미터에 넣어주시고 함수 뒤에 또 const를 넣어주신 이유가 무엇이죠? parameter에 const를 넣어주신 이유는 입력 b를 유지하기 위한 것인가요?
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
String 으로 바꿔서 풀었을
앞에서 말씀하신것처럼 문자열 접근은 c가 편하다고 하신게 왜인지 알 것 같습니다ㅠ 주로 했던 언어는 c++이라 c로만 준비하려하니 어색해 서 그런데 c로 이해하고 진도만 먼저 나가도 되는걸까요..? 아니면 c++로 바꿔보는 연습도 해야되는걸까요? 같은듯 다른거 같아서 질문드립니다
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
86번 질문 있습니다.
문제를 풀고 소스파일과 비교해볼려고 봤는데, 소스파일은 살짝 다른 방법으로 코딩되어 있더군요 저는 강의내용와 마찬가지로 각 level에서 피자집을 선택하여 조합하는 방식으로 풀었는데, 소스파일은 m번의 카운트(피자집 선택)이 어느 level(pz의 index)에서 카운트 되는지 조합하는 방식인 것 같은데... 결국엔 재귀함수를 다른방식으로 이용하여 똑같은 조합문제를 푼 것 아닌가요? 강의 내용과 소스파일의 코드 중 어느 것이 더 효율적인 가요? 상세한 설명 부탁드리겠습니다. 감사합니다.
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
벨만포드 알고리즘
안녕하십니까 좋은 강의 감사드립니다. 벨만포드 알고리즘코드 관련하여 질문이있습니다. for(i=1; i<n; i++){ for(j=0; j<Ed.size(); j++){ int s=Ed[j].s; int e=Ed[j].e; int w=Ed[j].val; if(dist[s]!=2147000000 && dist[s]+w<dist[e]){ dist[e]=dist[s]+w; } } } 여기서 바깥 for문이 i에 따라 1일때는 한번만에 가는 경우, 2일 때는 두번만의 가는 경우 ..... n-1번만에 가는경우 라고 설명 해 주셨는데 바깥 for문이 없더라도 안 쪽 for문 만으로 n-1번만에 가는 경우를 다 따지는 거 같은데 혹시 제가 잘못 이해한 것 인지... 입력이 vertex number 순으로 순차적으로 받게 되는데 예를들어 i가 1이고 안쪽 for 문을 j가 1일때 돌며 1->2 가는 것을 추가하여서 dist[2]=x를 넣게되면 그다음 j가 2가 될때는 dist[2]!=2147000000 조건에 걸리지 않게 되고 2에서 가는 경우의 수를 검토하게 되는데 그렇게 되면 이것은 두번만에 가는 경우가 되는것이 아닙니까??
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문있습니다.
선생님 방문한 map 을 1로 바꾸시는데 int dx[] ={1, 0, -1, 0} int dy[] ={0, 1, 0, -1} 0 0 1 0 0 1 1 0 0 이 경우 (1,1)에서 (1,2),(2,1)을 차례로 방문후 1 1 1 1 0 1 1 0 0 이 상태에서 (1,2)에서 다시 for문 돌면서 (2,2)를 1로 변경합니다. 1 1 1 1 1 1 1 0 0 그럼 큐에 남아있는 (2,1)에서 (2,2)로 가는 경우가 사라지게 되는데 이 경우 무시해도 괜찮나요? 최단거리값이라 상관없는건가요? 큐에서 pop()해서 직접 방문한것도 아니고, 큐에push()만 했는데 방문한걸로 취급(?)해도 되나해서요 질문이 엉뚱하죠 뭔가 찜찜?해서 질문드려요ㅋㅋ 강의 잘 보고 있습니다. 좋은하루되세요
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
struct(구조체) opeartor
안녕하십니까 좋은 강의 감사합니다. 강의를 듣던도중 궁금한 게 생겼습니다. bool opearator<( ){ } 이것이 일반 함수 형태와는 다르게 생겨 의미를 파악하기가 어려운데 어떻게 이해하면 되겠습니까?? 또 어떤 강좌에서는 매게변수로, { 앞에 const 를 붙이지 않는데 어떤 강좌에서는 const를 붙입니다. const를 붙이지 않을경우 될 때도 있으며 안될 때도 있는데 어떤 차이이며 어떤 의미인지가 궁금합니다.
- 해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문이 있습니다
선생님 수업 잘 듣고있습니다. 강의 듣기전에 문제를 풀어보긴했는데 이런 코드도 버블정렬을 이용했다고 할수있나요??? 채점은 성공으로 나왔습니다.. int main(){ //freopen("input.txt", "rt", stdin); int n,i,j,cnt=0,temp; scanf("%d",&n); vector <int> a(n); for(i=0; i<n; i++) { scanf("%d",&a[i]); } for(i=0; i<n; i++ ) { if(a[i]<0) { for(j=i; j>=cnt+1; j--) { temp=a[j]; a[j]=a[j-1]; a[j-1]=temp; } cnt++; } } for(i=0; i<n; i++) { printf("%d",a[i]); } return 0; }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
코드한번 봐주실수 있나요?
영상 보기 전에 한번 풀어봤습니다. 채점했을 때 5개 모두 합격했습니다만 혹시 다듬어야할 부분이 있나 확인 부탁드립니다. #include<stdio.h> #include<vector> #include<algorithm> using namespace std; int main(){ // freopen("input.txt", "rt", stdin); int n,i,j; scanf("%d", &n); int rank = 0; vector <int> a(n); vector <int> b(n); for(i=0; i<n; i++){ scanf("%d", &a[i]); b[i]= rank+(n-(n-i)+1);//b0 =1 ~ b7 = 8등 최소 등수 } //자기 기준 앞 사람을 앞서 갈수 있나 확인 for(i=n-1; i>-1; i--){ for(j=i-1; j>-1; j--){ if(a[i]>a[j]){ b[i] = b[i]-1; } } } for(i=0; i<n; i++){ printf("%d ", b[i]); } return 0; }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
선생님
저는 그냥 이렇게 코드를 만들어봤는데 이런 경우 문제가 발생하는지 궁금합니다. 감사합니다! #include<stdio.h> #define MAX 30000 int ind[MAX] = { 0, }; int main() { int n, m; scanf_s("%d", &n); for (int i = 0; i < n; i++) { int indication; scanf("%d", &indication); ind[indication]++; } scanf("%d", &m); for (int i = 0; i < m; i++) { int indication; scanf("%d", &indication); ind[indication]++; } for (int i = 0; i < MAX; i++) { if (ind[i] == 2) { printf("%d ", i); } } }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
51번 문제 5번 Time_limted
안녕하세요. 51번 문제 강의를 보고 알고리즘을 이해했다고 생각하고 코드를 스스로 다시 작성했습니다. 그리고 80점이 맞았고, 5번에서 타임 리밋이 발생하였습니다. 답안코드를 다시 읽어보면서 반복문에서 인덱스 부분에서의 차이점이 조금 있고 외에는 같은 알고리즘이라고 생각되는데요. 왜 제 코드는 5번에서 타임 리밋 발생하는지 알고싶습니다. #include <iostream> #include <fstream> using namespace std; int board[702][702]; int dir[702][702]; int main() { //ifstream cin; //cin.open("input.txt"); int width, heigh; cin >> heigh >> width; for (int i = 1; i <= heigh; i++) { for (int j = 1; j <= width; j++) { cin >> board[i][j]; dir[i][j] = board[i][j] + dir[i - 1][j] + dir[i][j - 1] - dir[i - 1][j - 1]; } } int w, h; cin >> h >> w; int max = 0; int num; for (int i = 0; i < heigh - h + 1; i++) { for (int j = 0; j < width - w + 1; j++) { num = dir[i + h][j + w] - dir[i + h][j] - dir[i][j + w] + dir[i][j]; if (max < num) max = num; } } cout << max; }
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
아스키코드에 대해서 질문있습니다.
안녕하세요! 궁금한것이 생겨서 질문드립니다! 저는 문제를 처음 봤을때 나이를 나타내는 940909-~~ 의 94를 문자열로 추출해 정수로 바꾸는 방식을 생각했었습니다. 그래서 string 변수에 94 문자를 저장하여 정수로 바꾸는 과정에서 atoi라는 함수가 있더군요 이런 라이브러리의 함수를 사용하면 안되는건가요? 아스키코드로 접근하는것이 더 효율적이라 저렇게 접근하신거고 이렇게 접근해야 코딩테스트의 방향성에 맞는것인가요?
- 미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
출력파일은 output.txt
문제에서 출력파일이름 관련해서 있는데 이건 무시해도 되는건가요?