728x90

알고리즘 공부(C++) 83

[C++]프로그래머스 프로세스

코딩테스트 연습 - 프로세스 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; struct process { int prio; int idx; }; int solution(vector priorities, int location) { int answer = 0; queue q; priority_queue pq; for(int i=0;i

[C++]프로그래머스 입국심사

코딩테스트 연습 - 입국심사 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; long long solution(int n, vector times) { long long answer = 0; long long min = 1; long long max = (long long)n *times[0]; //1000000000이 아닌, 더 큰 n * times가 되어야 함(처음 오류의 원인) long long mid; lon..

[C++] 백준 1012 유기농 배추 (DFS)

1012번: 유기농 배추 (acmicpc.net) 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 그래프가 주어져있고, 그 주변을 상하좌우로 탐색해나가고 싶을때는 웬만하면 dfs이다. #include #include using namespace std; int M, N, K; bool visited[50][50] = {false,}; int table[50][50] = {0,}; int dy[4] = {1, -1, 0, 0}; int dx[4] = {0, 0, 1, -1}; //상하좌우 로직은웬만하면 이런식으로 설정한다...

[C++] 백준 2606 <바이러스>

2606번: 바이러스 (acmicpc.net) 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 내 블로그에 있던 bfs 정리글을 고대로 참조해서 풀었는데.. 맞게한거같은데 자꾸 오류가 나길래 무엇이 원인인지 했더니만 우선 프로그래머스와는 다르게 백준은 cin도 내가 지정을 해줘야하기 때문에 배열크기나 원소의 초기값을 제대로 설정해줘야하는듯.. int의 초기값은 0이어서 괜찮지만 bool의 초기값은 true이기 때문에 {false,}를 이용해서 초기값을 설정해주어야 한다. #include #include #inclu..

[C++]프로그래머스 개인정보 수집 유효기간

코딩테스트 연습 - 개인정보 수집 유효기간 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include using namespace std; map termTable; map privTable; void init(vector terms, vector privacies) { for(auto term: terms) { string alp = term.substr(0, term.find(' '));//A,B,C string month = term.subs..

[C++]프로그래머스 [3차]n진수 게임

코딩테스트 연습 - [3차] n진수 게임 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; char list[16] = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; string change(int num, int n) { string result = ""; while (num / n > 0) { string temp = result; resul..

[C++]프로그래머스 징검다리 건너기(이진탐색)

코딩테스트 연습 - 징검다리 건너기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이제 레벨3도 어거지로라도 풀어보기로 결심을 했기 때문에... #include #include using namespace std; bool check(int n, const vector& stones, int k) { int cur = 0; for (int i = 0; i < stones.size(); i++) { if (stones[i] - n = k) return false; } return true; } int..

[C++]백준 1072 게임 (이진탐색)

1072번: 게임 (acmicpc.net) 1072번: 게임 김형택은 지금 몰래 Spider Solitaire(스파이더 카드놀이)를 하고 있다. 형택이는 이 게임을 이길 때도 있었지만, 질 때도 있었다. 누군가의 시선이 느껴진 형택이는 게임을 중단하고 코딩을 하기 시 www.acmicpc.net #include using namespace std; #define MAX 1000000000 long long X, Y, Z; int cnt=-1; int main() { cin >> X >> Y; Z=(Y*100/X); if(Z>=99) { cout

[C++]프로그래머스 주식가격(스택)

코딩테스트 연습 - 주식가격 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 아무리봐도 문제가 어려운건지 오랜만에 문제를 풀어서 내 뇌가 굳은건지 ,, 이해를 하는데도 너무 오랜 시간이 걸림. 뇌에 뭐가 있긴 한데 구현은 못하겠음 입력값 〉 [1, 4, 3, 2, 4, 3, 1, 2, 2, 2, 4, 4, 4, 3, 1, 2] 기댓값 〉 [15, 1, 1, 3, 1, 1, 9, 7, 6, 5, 3, 2, 1, 1, 1, 0] 이런 예제를 만들어봤다. 예제는 크게 만들수록 내가 더 정확하게 판단할 수 ..

[C++]프로그래머스 더 맵게(힙)

코딩테스트 연습 - 더 맵게 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 매 포문을 실행할 때마다 스코빌이 오름차순으로 새로 정렬되어야 한다. 또한, 가장 앞쪽에 있는 값이 갱신 된 후에 오름차순 정렬이 이루어져야 한다. 이러한 두가지 조건에 모두 적합한 자료구조가 바로 '힙'이다. C++에서는 heap이라는 이름 대신 priority_queue로 이루어져있다. queue와 비슷하지만 front()대신 top(), 매번 push할때마다 정렬이 되는 구조이다. #include #inclu..

728x90