본문 바로가기
반응형

백준45

BOJ 1931 회의실 배정 / C++ 문제 링크 : https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 문제 풀이 코드를 보면서 이해하는 편이 빠르다. 회의의 시작 시간과 끝나는 시간을 pair로 저장하는 vector를 만든다. 최대 배정 가능 회의를 넣는 벡터도 생성해준다. 회의들을 모두 입력받은 뒤, 가장 빨리 끝나는 작업 순으로(즉, pair의 second) 정렬을 해주기 위해 compare 함수를 만든다. 이 때, a.second와 b.second가 같다면 first도 똑같이 비교해줘야 한다. 예를 들어, 6개의 회의가 1 3 3 100 4 5 6 6 5 6 7 7 의 순서로 입력되었다면 정렬.. 2021. 8. 31.
BOJ 1436 영화감독 숌 / C++ 문제 링크 : https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net 문제 풀이 문제 설명이 잘 이해가 되지 않아 다른 블로그를 통해 이해했다. 일단 종말의 숫자란 6이 최소 3개 이상 들어간 숫자이고 N 번째 영화의 제목은 종말의 숫자이면서 N번째로 작은 숫자이다. 예를 들면 666, 1666, 2666, 3666, 4666, 5666, 6660, 6661, 6662 이런식으로 진행되는데 5666 다음에 6666 이 되지 않는 이유는 6660 이 .. 2021. 8. 27.
BOJ 2810 컵홀더 / C++ 문제 링크 : https://www.acmicpc.net/problem/2810 2810번: 컵홀더 첫째 줄에 좌석의 수 N이 주어진다. (1 ≤ N ≤ 50) 둘째 줄에는 좌석의 정보가 주어진다. www.acmicpc.net 문제 풀이 기본적으로 별의 개수를 세면 된다. SLLS인 경우 *S*LL*S*가 되므로 사용할 수 있는 컵홀더는 4개이다. 그런데 SSS인 경우 *S*S*S*이다. 이 때, 별의 개수는 4개인데 사람이 3명이므로 컵홀더는 3개밖에 사용되지 않는다. 따라서 사용할 수 있는 컵홀더가 사람 수보다 많을 때는 사람 수를 출력해주면 된다. 소스 코드 #include using namespace std; int main(){ int n, cnt = 1; char arr[51]; cin >> .. 2021. 8. 27.
BOJ 2851 슈퍼 마리오 / C++ 문제 링크 : https://www.acmicpc.net/problem/2851 2851번: 슈퍼 마리오 첫째 줄에 마리오가 받는 점수를 출력한다. 만약 100에 가까운 수가 2개라면 (예: 98, 102) 마리오는 큰 값을 선택한다. www.acmicpc.net 문제 풀이 버섯은 처음부터 순서대로 먹어야 하므로 하나씩 더해가는 변수 total이 필요하다. 또한 여태까지 먹었던 버섯의 점수를 변수 ans에 넣고 100에서 뺀 절댓값을 통해 먹어야할지 말아야할지 결정한다. 1 2 3 5 8 13 21 34 55 89로 예를 들면, (1) total에 1을 더하고 100 - total의 절댓값과 100 - ans의 절댓값을 비교한다. (ans는 0으로 초기화 되어있다.) 당연히 100 - total의 절댓값.. 2021. 8. 27.
반응형