문제 링크입니다: https://www.acmicpc.net/problem/2935
*의 경우 별 다른 조건 없이 계산만 하면 되지만 +의 경우 세 가지 경우로 나누어야합니다.
i) A가 B 보다 더 큰 경우
ii) A가 B와 같은 경우
iii) B가 A 보다 더 큰 경우
#include <iostream>
#include <string>
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(0);
cin.tie(0);
string A, B;
char op;
cin >> A >> op >> B;
if (op == '+')
{
if (A.length() > B.length())
{
string result = A;
int idx = A.length() - B.length();
result[idx] = '1';
cout << result << "\n";
}
else if (A.length() == B.length())
{
string result = A;
result[0] = '2';
cout << result << "\n";
}
else
{
string result = B;
int idx = B.length() - A.length();
result[idx] = '1';
cout << result << "\n";
}
}
else
{
int len = A.length() - 1 + B.length() - 1;
string result = "1";
for (int i = 0; i < len; i++)
result += '0';
cout << result << "\n";
}
return 0;
}
개발환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
'알고리즘 > BOJ' 카테고리의 다른 글
백준 1546번 평균 (0) | 2018.11.06 |
---|---|
백준 9093번 단어 뒤집기 (2) | 2018.11.06 |
백준 1748번 수 이어 쓰기 1 (0) | 2018.11.05 |
백준 10984번 내 학점을 구해줘 (0) | 2018.11.05 |
백준 2234번 성곽 (0) | 2018.11.05 |