728x90
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
'알고리즘 > 백준' 카테고리의 다른 글
알고리즘(C++) / 백준 1158 : 요세푸스 문제 (0) | 2021.05.01 |
---|---|
알고리즘(C++) / 백준 11655 : ROT13 (0) | 2021.04.27 |
알고리즘(C++) / 백준 1707 : 이분 그래프 (1) | 2021.04.27 |
알고리즘(c++) / 백준 2743 : 단어 길이 재기 (0) | 2021.04.26 |
알고리즘(C++) / 백준 10820 : 문자열 분석 (0) | 2021.04.26 |
댓글