[백준] 1715번 카드 정렬하기 (C++)

2025. 7. 29. 18:19·Algorithm
728x90

https://www.acmicpc.net/problem/1715

 

 

이 문제는 백준 파일 합치기 문제(13975번)와 굉장히 유사한 문제이다.

정렬된 카드의 수치를 입력받고 그 값들을 2개씩 더하여 최소한의 비교 수치를 계산하는 문제이다.

 

 

즉 최소한의 비교수치를 알기 위해서 정렬된 카드에서 가장 작은 숫자 2개를 더하고 생성된 카드를 다시 전체에서 비교하여 가장 작은 2개를 더하여 계속해서 비교한다. -> 최소힙 사용

 

정답 코드

#include <bits/stdc++.h>
using namespace std;
typedef pair<int, int> pii;
typedef long long ll;
#define endl "\n"
#define MAX 1e9

int dx[] = {0, 1, -1, 0, 1, -1, -1, 1};
int dy[] = {1, 0, 0, -1, -1, 1, -1, 1};
int N;
priority_queue<int, vector<int>, greater<int>> pq;

void solve() {
    int result = 0;

    while(pq.size() != 1) {
        int a = pq.top();
        pq.pop();
        int b = pq.top();
        pq.pop();
        int tmp = a + b;
        result += tmp;
        pq.push(tmp);
    }
    
    cout << result;
}

void input() {
    cin >> N;

    for(int i = 0; i < N; i++) {
        int a;
        cin >> a;
        pq.push(a);
    }
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0), cout.tie(0);

    input();
    solve();
}

 

 

회고록

이전에 풀어봤던 문제와 굉장히 유사했던 문제여서 아이디어가 바로 생각날 수 있었다.

728x90
저작자표시 (새창열림)

'Algorithm' 카테고리의 다른 글

[백준] 4803번 트리 (C++)  (0) 2025.07.31
[백준] 14923번 미로 탈출 (C++)  (0) 2025.07.30
[백준] 14728번 벼락치기 (C++)  (0) 2025.07.28
[백준] 1005번 ACM Craft (C++)  (0) 2025.07.27
[백준] 9184번 신나는 함수 실행 (C++)  (0) 2025.07.26
'Algorithm' 카테고리의 다른 글
  • [백준] 4803번 트리 (C++)
  • [백준] 14923번 미로 탈출 (C++)
  • [백준] 14728번 벼락치기 (C++)
  • [백준] 1005번 ACM Craft (C++)
쿨쿨.
쿨쿨.
  • 쿨쿨.
    All of the life
    쿨쿨.
  • 전체
    오늘
    어제
    • 분류 전체보기 (287) N
      • Programming (54) N
        • C, C++ (18)
        • Python (6)
        • Java (1)
        • HTML,CSS,JS (3)
        • SQL(DB) (13)
        • SpringBoot (10) N
        • Android (2)
        • CI,CD (1)
      • Algorithm (173)
        • Review (4)
      • Security (14)
        • WebHacking (3)
        • Websecurity (11)
      • OS (19)
        • Linux (12)
        • Mac os (2)
      • 머신러닝 (1)
      • CS(Computer Science) (12)
        • 컴퓨터 네트워크 (3)
        • 컴퓨터 구조 (1)
        • 인공지능 (8)
      • Docker (2)
      • Dev Book Review (3)
        • Clean Code (1)
        • Effective Java (0)
        • Real MySQL (2)
      • SWM (1)
      • Review (6)
      • AWS (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    WebSecurity
    BFS
    비트마스킹
    그리디
    정렬
    c언어
    다이나믹 프로그래밍
    시뮬레이션
    우선순위큐
    그래프 이론
    linux
    DFS
    이분탐색
    누적합
    구현
    백준
    트리
    에라토스테네스의 체
    브루트포스
    Bandit
    백트래킹
    wargame
    다익스트라
    우선순위 큐
    DP
    코딩
    투포인터
    Leviathan
    깊이우선탐색
    재귀
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.6
쿨쿨.
[백준] 1715번 카드 정렬하기 (C++)
상단으로

티스토리툴바