묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-T 진짜 무식하게 풀기 테케는 통과되는데 ㅎㅎ
#include<iostream> using namespace std; int n, a[1000004], b[1000004]; int main(){ cin >> n; for(int i=0;i<n;i++){ cin>>a[i]; } for(int i=0;i<n-1;i++){ if(a[i]<a[i+1]){ b[i]=a[i+1]; }else if(a[i]>a[i+1]){ int k=i, temp=i; for(int j=i;j<n-1;j++){ if(a[j]<a[j+1])break; k++; } for(int j=temp;j<=k;j++){ b[j]=a[k+1]; } int flag=1; for(int j=i;j<n-1;j++){ if(a[i]<a[j+1]){ flag=0; break; } } if(flag)b[i]=-1; } } b[n-1]=-1; for(int i=0;i<n;i++){ cout << b[i] << " "; } }
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2주차 개념 #4- 인접행렬 질문
안녕하세요 큰돌님.인접행렬 강의 관련하여 질문드립니다. [문제] 정점 20개인 그래프로 인접행렬 표현 시 메모리 최소로 쓸때, 배열 어떻게 만들어야 하나요? 질문1(강의 59초) 배열을 표현할때bool a[10][20]으로 할수도 있다라고 하셨는데, 이 표현이 20개의 노드중 10개의 노드로만 단방향 경로로 그래프를 만든다는 의미일까요? 질문2(강의 1분25초) arr[20][20] 필요한데 이보다 큰값을 부여할수 있다라고 언급하셨는데 a[10000][10000], 노드 20개를 이용해서 a[10000][10000] 배열을 어떻게 만들수 있는지 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
삼성전자 라이브러리
안녕하십니까, 수강생입니다.큰돌님!알고리즘교안 교재에서 삼성전자 라이브러리는 iostream, stdio.h, string.h, algorithm 정도 외우면 된다고 했는데, VS를 사용하여 코디가 잘돌아가는 지 확인할 때 앞서 말씀드린 라이브러리정도만 외우면되나요?채첨시스템에 bits/stdc++.h는 사용할 수 있다고 알고 있습니다. 항상 감사드립니다.
-
해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
정렬 기준을 무게로 잡아도 풀리는데,,
밑면 넓이 기준으로 정렬하고 무게를 LIS 하는 것이랑무게를 기준으로 정렬하고 밑면 넓이를 LIS 하는 것 둘다 같은 답이 나오는데 이렇게 풀어도 되는 것이 맞나요?왜냐면 문제 조건에 무게도 같은게 없다고 나와서 그렇게 생각했습니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-F 시간복잡도 O(2^26) 이면 풀려야 하는 것 아닌가요? ㅠㅠ
자바가 느려서인지, 아니면 제가 첨부터 접근을 잘못한건지 모르겠습니다. ㅠㅠpackage lecture4; import java.util.*; public class Prob1062 { static List<Set<Character>> sets = new ArrayList<>(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int k = sc.nextInt(); if(k<5){ System.out.println(0); return; }else if (k==26){ System.out.println(n); return; } List<String> list = new ArrayList<>(); for (int i = 0; i < n; i++) { // 문자열 입력 받기 String str = sc.next(); list.add(str); Set<Character> set = new HashSet<>(); // 각 문자열의 문자들을 Set에 저장. for (char c : str.toCharArray()) { set.add(c); } sets.add(set); } List<Set<Character>> filtered = new ArrayList<>(); for (int i = 0; i < n; i++) { // K 보다 많은 알파벳으로 이루어진 경우 제외 if(sets.get(i).size()<=k){ filtered.add(sets.get(i)); } } List<Integer> masks = new ArrayList<>(); for (Set<Character> set : filtered) { // Set의 각 알파벳을 대응되는 비트마스크로 표현 masks.add(setToMask(set)); } int mask = 1; int max = 0; while (mask < (1<<26)-1){ // 모든 경우의 수 탐색 if(Integer.bitCount(mask)>k){ // 비트마스크의 1 개수가 k 보다 크면 다음 경우로 넘어가기 mask++; continue; } int count = 0; for (Integer m : masks) { // 문자열을 비트마스크로 표현한 것을 비교해서 읽을 수 있는건지 개수 샘 if((mask & m) == m){ count++; } } max = Math.max(max,count); // 최대값 저장 mask++; } System.out.println(max); } private static int setToMask(Set<Character> set){ int[] num = new int[26]; for (Character character : set) { num[25 - (character-'a')] = 1; } StringBuffer sb = new StringBuffer(); for (int i : num) { sb.append(i); } return Integer.parseInt(sb.toString(),2); } }
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
벡터안쓰고 벽을 세우는 법은 없을까요?
dfs랑 땅넓이구하기는 제 나름대로 했는데 점 세개를 배열로 고르려는데 어떻게 구현할지 막혀서 못 풀었는데 벡터 안쓰고 배열로만 점 세개를 고르는 이런 알고리즘도 있을까요? 벡터쓰는게 무조건 낫거나 없으면 답변 안해주셔도 됩니다 ㅜㅜ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-O 맞은거 같은데 왜 틀릴까요? ㅠㅠ
#include<iostream> #include<string> #include<stack> using namespace std; bool check(string s){ stack<char> stk; for(char c : s){ if(c=='(')stk.push(c); if(c=='[')stk.push(c); if(c==')'){ if(stk.empty()||stk.top()=='['){ return false; } stk.pop(); } if(c==']'){ if(stk.empty()||stk.top()=='('){ return false; } stk.pop(); } } if(stk.size())return false; else return true; } int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); while(1){ string str; getline(cin,str); if(str==".")break; if(check(str))cout<< "yes\n"; else cout<<"no\n"; } return 0; }
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
디스어셈블리 질문입니다.
13분 22초에 나오는 플레이어 스탯 관련 질문입니다.저 같은 경우는 ebp레지스터의 위치를 기준으로 값을 할당하는게 아닌아래의 내용처럼 eax레지스터의 주소에 +4, +8한 값을 이용하여 변수에 값이 할당되는데요제 컴퓨터는 왜 eax레지스터를 이용하였는지 궁금합니다. ret.hp = 100;00CC245E mov eax,dword ptr [ret] 00CC2461 mov dword ptr [eax],64h ret.attack = 10;00CC2467 mov eax,dword ptr [ret] 00CC246A mov dword ptr [eax+4],0Ah ret.defence = 2;00CC2471 mov eax,dword ptr [ret] 00CC2474 mov dword ptr [eax+8],2
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
ios_base::~ cin.tie(~)를 쓰는 기준이 언제일까요?
교안이나 강의중에 설명 있었나요? 그럼 죄송합니다;;
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
시뮬레이션이 정확하게 무엇인가요?
삼성 코딩테스트는 주로 시뮬레이션이 나온다고 하는데 그렇다면 시뮬레이션이 정확히 무엇인가요?단순 빡구현이라고들 많이 표현하던데 그렇다면 별다른 알고리즘을 안쓰고 구현만 해내는것인가요? 이 강의에선 어디를 집중적으로 풀어야 할까요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
할당된 메모리를 감싸는 'cccccccc' 질문 드립니다
멤버변수 int hp; 하나만 지정 하고a.hp=1;b.hp=2; 식으로 a,b 로 각각 대입했을때 메모리가 cccccccc0000002cccccccccccccccc0000001cccccccc 식으로 메모리가 올라오는데 감싸고 있는 'cccccccc' 의미가 있는 값인가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세여 질문이 있습니다!
큰돌님 안녕하세여! 저는 게임 클라이언트 프로그래머가 되기 위해서 C++ , C# 유니티 등을 공부중입니다. 그런데 CS관련지식도 필요할 거 같아서 큰돌님의 CS지식의 정석 편을 들어도 되는지가 궁금해서 질문 남깁니다. 실습이 자바나 자바스크립트 위주로 진행된다는데 저는 C++, C#만 공부했는데 들어도 댈까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-G(9996번 문제) 질문 드립니다.
안녕하세요, 선생님!선생님 수업 들으면서 정말 즐겁게 공부하고 있는 이직 준비생(?) 입니다..!다름이 아니라 9996번 테스트케이스는 통과하는데 어떤 반례에서 걸리는지 채점 중(13%..) 즈음에 "틀렸습니다" 라는 메세지가 뜹니다.최대한 예시를 안보고 풀려고 하고 있는데, 어떤 부분을 잘못 이해했는지 감이 잡히질 않아 이렇게 질문 드립니다ㅠㅠ혹시나 ab*ba 패턴일 때 aba 의 결과가 DA 로 출력 되어야 하나요..? 시간 되실 때 한 번 확인 부탁 드립니다 선생님ㅠㅠhttps://www.acmicpc.net/source/58695737
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
주소 전달 과 참조 전달 관련하여 질문있습니다
값 전달과 주소 전달 2개만 봤을 때 되도록 이면 주소 전달을 사용하라고 하셨는 대주소를 알면 그 데이터의 값을 접근 할 수 있으니까 굳이 값 전달 사용 하지 않고 주소 전달만 사용해도 되는 부분일까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
bits/stdc++.h가 안되서 tie를 못쓰는데 헤더가 있나요?
제 vscode가 멍청이라 <iostream>밖에 안 돼서 header를 항상 입력해서 풀어보거든요 tie의 헤더 여쭤봐도 될까요 근데 구글링 해봐도 안 나오는데 없나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-m string::npos vs end() 질문입니다,
안녕하세요 강사님! 좋은 수업 감사합니다.http://boj.kr/09947ca408364d6984681d898089205c저는 string::npos대신 end함수를 이용하여서 풀어보았는데 end는 컴파일 오류가 뜨더라구요,,end는 안되고 string::npos여야만 하는 이유가 궁금합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-i 코드 내용 질문
안녕하세요, 큰돌님, 숨바꼭질 로직에 궁금한 점이 생겨서 질문드립니다.이 문제에서, 한 턴에 각각의 영역을 한 턴으로 생각하여 횟수를 센다는 건 이해를 하였습니다. 그런데, 다른 숨바꼭질 로직에서는 그냥 visited 배열을 사용하여 최소의 수를 구했던 걸로 알고 있습니다.그냥 visited배열을 쓰면 같은 영역에는 같은 숫자 가 저장되어 있지 않나요?(이미 영역이 분리되어 있지 않나요?)visited 배열 안에 있는 수를 이전과 같이 꺼내어 사용하면 되는 것 아닌가요?왜 이 문제의 경우에만 영역을 따로 생각해야 하는 건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-D 이왜틀
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요 강의 잘 보고 있습니다.혹시 바로 인덱스 0과 마지막을 비교하는 것은 vs에서 0, 1이 잘 찍히긴 하는데 백준에선 왜 틀리는지 궁금합니다ㅜ 제가 뭘 잘못 이해하고 있는 걸까요..?http://boj.kr/94c1cf65fa8043ff845b4b815351dd9a
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S의 dfs에 메모이제이션 기법을 사용할 수 있을까요?
안녕하세요. 선생님!좋은 수업 열심히 듣고있습니다!2-S의 dfs에서 메모이제이션 기법을 사용하여 계산량을 줄이려고 했습니다. 그런데 노드 간에 서로 양방향으로 신뢰하는 경우가 있어 잘 안되는 것 같습니다.. 혹시 이 문제도 메모이제이션 기법을 이용해서 재귀함수 호출 횟수를 줄일 수 있을까요?ㅜ.ㅜ
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
공부방법 질문 드립니다.
멘토님 안녕하십니까?1주차 문제 풀이 시작하려고 하고 있습니다. 제가 visual studio 환경에서 컴파일 해본 뒤 예상대로 출력되면 백준에 복붙해서 하는 방식으로 진행을 해보려고 하는데요, 괜찮은 방식인지 의문이 들어 질문 남기게 되었습니다.자동 완성이 독이 된다던지 이런 조언이 있을까요?c++은 잘 안써봐서 백준에 바로 작성하면 문법 오류를 사전에 잡기가 너무 어려워서 질문 드립니다.ㅜㅜ