알고리즘 (2) 썸네일형 리스트형 [백준/BOJ] 11047번 c++ 문제풀이 그리디 알고리즘 문제이다. 가지고 있는 동전의 가치를 임의의 배열에 집어넣고 if 절을 사용하여 필요한 동전의 개수를 계산함과 동시에 총 계산할 값을 나머지로 갱신하는 방법으로 풀 수 있다. 가치가 큰것에서 시작하여 작은것 순으로 계산해줘야 간단하게 작성할 수 있다. #include using namespace std; int a[11]; int n, k; int main() { cin >> n >> k; for (int i = 0; i > a[i]; //동전의 가치 배열에 집어넣기 } int sum = 0; for (int j = n-1; j >= 0; j--) { //배열은 a[0]에서 시작, a[n-1]이 끝 if (a[j] [백준/BOJ] 2941번 c++ 문제풀이 처음엔 배열을 생각하였으나 조건이 계속 추가될 수 있는 점을 고려하여 벡터를 응용해보기로 하였다. 원래 생각했던 방식은 배열과 if절을 사용하여 특정 문자열을 찾고 나면 임의의 temp 값을 1올린 후 그 문자열을 지우고 다시 조건을 돌려 temp에 추가하는 풀이를 하려고 했으나 'c=c=' 같이 특정문자열이 두번 이상 반복되는 경우를 대응하기 어려웠고, 무엇보다 조건문이 계속 추가되면서 코드가 매우 지저분해졌다. #include using namespace std; int main() { vector x = { "c=", "c-", "dz=","d-","lj","nj","s=","z=" }; int n; string str; cin >> str; for (int i = 0; i < x.size(); i.. 이전 1 다음