본문 바로가기

코테58

[C/C++] 프로그래머스 스쿨 무지의 먹방라이브, Greedy 문제 코딩테스트 연습 - 무지의 먹방 라이브 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 #include #include using namespace std; int solution(vector food_times, long long k) { int answer=0; vector arr; int check=0; while (check=arr.size()) return -1; else answer=arr[k]+1; return answer; } 풀이 정확성 통과 효율성 탈락 2023. 2. 8.
[C/C++] 나동빈 볼링공 고르기, Greedy 문제 A, B 두 사람이 볼링을 치고 있다. 두 사람은 서로 무게가 다른 볼링공을 고르려고 한다. 볼링공은 총 N개이며 각 볼링공마다 무게가 적혀있고 공의 번호는 1번부터 순서대로 부여된다. 같은 무게의 공이 두 개 있을 수 있지만 서로 다른 공으로 간주한다. 볼링공의 무게는 1부터 M까지의 자연수 형태로 존재한다. 이때 두 사람이 서로 다른 볼링공을 고르는 경우의 수를 구하라. 예를 들어 볼링공이 5개이고 각 볼링공이 번호 순서대로 1, 3, 2, 3, 2라면, 경우의 수는 8이다. 코드 #include #include using namespace std; int main() { int N, M, num, result = 0; int B[11] = { 0 }; scanf_s("%d %d", &N, &M.. 2023. 2. 7.
[C/C++] 나동빈 만들 수 없는 금액, Greedy 문제 동빈이는 N개의 동전을 가지고 있다. N개의 동전의 단위(1,000,000이하의 자연수)를 입력받고, 이 N개의 동전을 조합하여 만들 수 없는 정수 중 최솟값을 구하라. 예를 들어 N=5이고 각 단위가 3, 2, 1, 1, 9일 때 만들 수 없는 정수의 최소 단위는 8이다. (N은 1,000보다 작거나 같은 자연수) 코드 #include #include #include #include using namespace std; int main() { vector coin; int N, num, result=1; cin >> N; for (int i = 0; i > num; coin.push_back(num); } sort(coin.begin(), coin.end()); nu.. 2023. 2. 7.
[C/C++] 백준 1439, Greedy 문제 1439번: 뒤집기 (acmicpc.net) 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net 코드 #include #include #include using namespace std; int main() { string S; cin >> S; int zero = 0, one = 0, index = 0; int temp1, temp2; temp1 = stoi(S.substr(index, 1)); if (temp1 == 0) zero++; else one++; while (index < S.length() .. 2023. 2. 6.
[C/C++] 나동빈 곱하기 혹은 더하기, Greedy 문제 각 자리가 0~9로 이루어진 문자열 S가 주어졌을 때, 왼쪽부터 오른쪽으로 하나씩 모든 숫자를 확인하며 숫자 사이에 'x' 혹은 '+' 연산자를 삽입하여 만들 수 있는 가장 큰 수를 도출하라. 단, 덧셈보다 곱셈이 우선시되는 연산의 기본 법칙은 무시하며 왼쪽 연산부터 차례로 계산한다고 가정한다. 예를 들어 02984라는 문자열이 주어지면 가장 큰 수는(((0+2)x9)x8)x4=576이다. 코드 #include #include #include using namespace std; int main() { string S; cin >> S; int temp1, temp2, index = 0; temp1 = stoi(S.substr(index, 1)); while (index < S.length() - .. 2023. 2. 6.
[C/C++] 나동빈 모험가 길드, Greedy 문제 한 마을의 모험가가 N명이고, 각 모험가의 공포도는 X이다. 공포도가 X수준인 모험가는 반드시 X명 이상의 모험가 길드에 참여해야 모험을 떠날 수 있다. 모험을 떠나지 않고 마을에 남아있을 수 있으므로 모든 모험가가 길드에 가입해야 하는 것은 아니다. 공포도는 모험가의 수보다 작거나 같다. 모험을 떠날 수 있는 그룹의 최대 수를 구하라. 예를 들어 5명의 모험가가 있다고 할 때 각각의 공포도가 2 3 1 2 2 라면, 모험을 떠날 수 있는 그룹은 2팀이다. 첫 번째줄에 모험가의 수가 주어지고 두 번째 줄에 공포도가 주어진다. 코드 #include #include #include #include using namespace std; int main() { vector X; int N, x, num =.. 2023. 2. 6.