본문 바로가기

백준14

백준 1744번 - 수 묶기 (C++,priority_queue) 백준 1744번 https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 문제설명 N개의 숫자를 입력받아 수열을 묶어 최대값을 구하는 문제 (묶인 값들은 서로 곱해진다.) ex) input = 1 2 3 4 1+2+(3*4) = 15 접근 1. 음수가 짝수개이면 서로 곱해 양수가 나오므로 최대값이 된다. 2. 양수는 1을 제외한 값들을 큰 수부터 차례대로 곱하면 최대값이 된다. 3. 1은 다른 양수와 곱하는 것보다 따로 더해주는게 더 큰값이 나옴 4... 2021. 4. 22.
백준 2812번 - 크게만들기 (C++,deque) 백준 2812번 https://www.acmicpc.net/problem/2812 2812번: 크게 만들기 N자리 숫자가 주어졌을 때, 여기서 숫자 K개를 지워서 얻을 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제설명 N자리 숫자를 입력받고 K개를 지워 가장 큰수를 구하는 문제 (숫자의 위치를 바꿀 수 없음) 접근 처음 접근할 때에는 문제를 잘못 이해하여 입력받은 숫자의 순서를 바꿔서 정렬로 풀었다. (결과: 실패) 틀린이유를 찾다가 고민 끝에 문제를 제대로 이해하여 deque를 사용하여 구현 코드 코드 // 헤더파일은 여러가지 문제를 풀기 편하게 그냥 고정해둠,, #include #include #include #include #include #include #.. 2021. 4. 21.