목록

문제 링크 : www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 관련 알고리즘 : 그리디 알고리즘(탐욕 알고리즘), 동적 계획법 아이디어) 2가지 방법으로 풀어봤다. 그리디) 처음 설탕을 가져갈 때 5kg짜리로 최대한 많이 담고, 남은 설탕을 3kg으로 가져감. 만약 5kg으로 최대한 담고 3kg으로 나머지를 담는데, 나눠떨어지지 않으면 5kg를 하나 빼고 다시 3kg을 담음. 5kg를 다 뺐지만, 3kg만으로 설탕이 나눠지지 않으면, -1을 출력. 동적 계획법)cach..
Stack(스택) 자료구조 구현언어 : C/C++ 사용한 IDE : 비주얼 스튜디오 스택은 먼저들어온 데이터가 가장 나중에 나가는 형태의 자료구조입니다. 반대로 말하면 가장 나중에 들어온 데이터가 가장 처음으로 나가게 됩니다. 이러한 자료구조를 LIFO(Last in first out)라고도 말합니다. 스택 형태 상상해보기 스택은 한쪽이 막혀있는 통의 형태입니다. 통속에 무언가를 넣었을 때 한쪽이 막혀있기 때문에, 처음에 넣은 것을 빼려면 위에 쌓여 있는 다른 것들을 다 빼야 합니다. 아래는 예시 그림입니다. 예를 들어서 위의 그림처럼 한쪽이 막혀있는 통에 숫자가 적혀있는 네모를 1->2->3 순서대로 넣었을 때, 통속에 있는 상자를 다시 빼려면 3->2->1 순으로 나오게 됩니다. 용어 설명 스택의 A..
본 리뷰는 개인적인 비용을 지불하여 쓰는 리뷰입니다. + 추가 : 어느 선생님께 수술을 받은지에 대한 문의 댓글이 좀 있는데, 현재는 병원을 옮기신 걸로 들었습니다. 저번주 토요일, 그러니까 2021년 3월 20일에 스마일 라식을 하러 갔다. 부산에 안과를 알아봤는데, 크게 2곳으로 나뉘었다. "밝은 세상안과" "밝은 눈안과" 이 두 병원중에서 전날까지 고민했다. 결국은 밝은눈안과에서 하기로 했다. 상담을 받아보니 스마일라식 종류가 3가지 였다. BNG스마일 트리플 스마일 콰트로 스마일 BNG -> 트리플 -> 콰트로 순으로 비싼 수술인데, 상담을 거쳐서 트리플 스마일을 하기로 결정했다. 당일날 검사를 하고 수술을 진행했다. 건물 전체가 안과였는데, 4층인가?? 거기서 검사를 하고, 수술은 7층에서 진행..
문제설명 문제출처 : www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 간략한 설명 : Stack을 구현할 수 있는지에 대한 문제. 메인 필요지식 : 자료구조 Stack 문제풀이 아이디어 Stack을 연결리스트를 이용해서 구현. 배열을 이용해서 구현해도 되지만, 동적으로 할당하고 싶어서 연결리스트를 이용했다. 사전에 구현되어 있는 C++의 Stack 표준 라이브러리를 사용해도 되지만, Stack을 복습하는 차원에서 처음부터 끝까지 구현해 보았..
문제설명 출처 : www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 평균을 넘는 학생 수 의 비율을 출력하는 문제. 문제풀이 아이디어 그냥 문제의 흐름대로 단순하게 계산. 배열의 길이를 동적으로 할당. 코드 #include #include using namespace std; int main() { int testCase; double average=0; int count = 0; //평균을 넘는 학생 수 cin >> testCase; for (int i = 0; i > N; int..
문제설명 출처: www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 간략 설명 : O가 나올 때마다 점수가 1씩 증가하다가, X를 만나면 증가하던 점수가 1로 초기화 문제풀이 아이디어 문제 풀이 아이디어 : X를 만날 때까지 카운트를 1씩 증가시켜서 점수에 더하다가 X를 만나면 카운트를 1로 다시 초기화 코드 #include #include using namespace std; int main() { int N; int sum = 0; int..
숫자 개수 세기 #include using namespace std; int main() { int a, b, c; int result; int arr[10] = { 0 }; //각 자리수의 변수에 저장 cin >> a >> b >> c; //숫자 입력 result = a * b * c; while (result != 0) { arr[result % 10] += 1; result /= 10; } for (int i = 0; i < 10; i++) { cout
#include using namespace std; int main() { int max = 0; int idx = 0; int arr[9] = { 0 }; for (int i = 0; i > arr[i]; if (arr[i] > max) { max = arr[i]; idx = i; } } cout
ya_ya
'분류 전체보기' 카테고리의 글 목록 (8 Page)