-
백준 20650 Do You Know Your ABCs? [C]알고리즘 2023. 1. 7. 21:27
문제
https://www.acmicpc.net/problem/20650
20650번: Do You Know Your ABCs?
Farmer John's cows have been holding a daily online gathering on the "mooZ" video meeting platform. For fun, they have invented a simple number game to play during the meeting to keep themselves entertained. Elsie has three positive integers $A$, $B$, and
www.acmicpc.net
풀이
문제를 요약하자면, A, B, C, A+B, A+C, B+C, A+B+C 가 순서없이 주어질 때, 양의 정수 A,B,C (A<=B<=C)를 추리해내는 문제이다.
문제의 핵심은 A, B, C, A+B, A+C, B+C, A+B+C를 정렬한다면, A<=B<=.... <=A+B+C인 것을 이끌어내는 것이고, 이를 통해 문제를 풀 수 있다. 정렬을 하여 가장 작은 두 수가 각각 A,B이며 가장 큰 수인 A+B+C에서 A,B를 뺀 수가 바로 C 가 되는 구조이다.
코드
#include<stdio.h> #include<algorithm> using namespace std; int set[10]; int main() { int i; for(i=1;i<=7;i++){ scanf("%d",&set[i]); } std::stable_sort(set,set+8); int ma = set[7]; int a = set[1]; int b = set[2]; int c= ma - set[1]-set[2]; printf("%d %d %d",a,b,c); return 0; }
'알고리즘' 카테고리의 다른 글
백준 20652 Stuck in a Rut [C] (0) 2023.01.07 백준 20651 Daisy Chains [C] (0) 2023.01.07 백준 9012 괄호 [C] (0) 2023.01.07 백준 10773 제로 [C] (0) 2023.01.07 백준 10828 스택 [C] (0) 2023.01.07