본문 바로가기
알고리즘/백준

알고리즘(C++) / 백준 10824 : 네 수

by clean_h 2021. 4. 27.
728x90

10824

boj.kr/10824

 

10824번: 네 수

첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000)

www.acmicpc.net

 

문제

네 자연수 A, B, C, D가 주어진다. 이때, A와 B를 붙인 수와 C와 D를 붙인 수의 합을 구하는 프로그램을 작성하시오.

두 수 A와 B를 합치는 것은 A의 뒤에 B를 붙이는 것을 의미한다. 즉, 20과 30을 붙이면 2030이 된다.

 

입력

첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000)

 

출력

A와 B를 붙인 수와 C와 D를 붙인 수의 합을 출력한다.

 

코드

#include <iostream>
#include <string>
using namespace std;

int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	string A, B, C, D;

	cin >> A >> B >> C >> D;

	string A_B = A + B;
	string C_D = C + D;

	long long A_B_int, C_D_int;
	
	A_B_int = stoll(A_B);
	C_D_int = stoll(C_D);

	cout << A_B_int + C_D_int << "\n";
	return 0;
}

 

설명

string 형으로 A, B, C, D를 입력받은후 A_B에는 A와 B를 이어 붙인 형태, C_D에는 C와 D를 이어 붙인 형태를 저장한다. string에는 형변화이 가능한 sto__함수가 존재한다. 이 함수를 어떻게 쓰느냐에 따라서 int, long, long long 형태로 바꿔줄 수 있다. 

 

결과

 

고찰

이번 문제는 string을 붙이고 longlong 형으로 바꾸는게 포인트이다.

항상 범위를 생각해서 어떤 형을 써야할지 확인해야 한다. 

 

난이도

◐○

728x90

댓글