-
10824) 네 수 c++백준코딩일기 2020. 12. 1. 11:55
문제 ) www.acmicpc.net/problem/10824
10824번: 네 수
첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000)
www.acmicpc.net
풀이 )
예제 입력으로 문제를 생각해보면,
10, 20, 30, 40 을 입력받아서 A 와 B 를 붙인 수 = 1020 이고, C 와 D 를 붙인 수는 = 3040 으로
이 둘의 합은 1020 + 3040 = 4060 이 된다.
1. A 와 B 를 붙인 수를 만들기 위해 먼저 A 와 B 를 문자열로 바꾸어서 두개를 합해준다.
to_string(A) + to_string(B) => 문자열끼리 더하게 되면 앞에 문자열 뒤에 붙인 문자열이 붙어서 1020 으로 만들어진다.2. A, B, C, D 는 최대 1,000,000 까지 될 수 있는데, 가장 큰 경우를 생각해 보았을 때,
A = 1,000,000 이고 B = 1,000,000 이라면 두개를 붙이면 AB = 1,000,000,000,000 이 되어서 long long 형으로 받아야한다.3. 문자열을 long long 형으로 바꿔주기 위해서 stoll 을 사용해서 바꿔준다.
코드 )
#include <iostream> using namespace std; int A, B, C, D; long long sum; int main(void) { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> A >> B >> C >> D; sum = stoll(to_string(A) + to_string(B)) + stoll(to_string(C) + to_string(D)); cout << sum << "\n"; }
'백준코딩일기' 카테고리의 다른 글
15649) N과 M (1) c++ (0) 2020.12.10 11656) 접미사 배열 c++ (0) 2020.12.01 11655) ROT13 c++ (0) 2020.11.24 2743) 단어 길이 재기 c++ (0) 2020.11.24 10820) 문자열 분석 c++ (0) 2020.11.24