반응형
Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

코딩하기 좋은날

백준 2935 소음 본문

백준(Baekjoon) 문제

백준 2935 소음

huiung 2019. 9. 5. 07:44
반응형

 

https://www.acmicpc.net/problem/2935

문제와 채점은 위 사이트에서 확인 하실 수 있습니다.

 

 

10의 제곱꼴로 주어지는 두수를 *나 + 해서 출력하는 문제입니다.

*할시에는 두수(문자열)을 더한뒤 첫번째 자리숫자만 1을 출력하고 나머지는 모두 0을 출력 하면 됩니다.

 

+할시에는 더 길이가 긴 문자열의 A.size()-B.size()인덱스에 해당하는 요소를 1로 바꾸어주고 출력하면 됩니다.

두 문자열의 길이가 같을 때는 첫번째 자리숫자를 2로 바꾸어주면 해결이됩니다.

 

다음은 코드입니다.

 

#include <iostream>
#include <string>

using namespace std;

int main(void) {
	ios_base::sync_with_stdio(false); cin.tie(NULL);
	string A,B,op;
	cin >> A >> op >> B;
	if(op == "*") {
		A += B;
		for(int i = 0; i < A.size(); i++) {
			if(i != 0 && A[i] == '1') continue;
			else cout<<A[i];
		}
	}
	else {
		if(A.size() > B.size()) {
			A[A.size() - B.size()] = '1';
			cout<<A;
		}
		else if(A.size() < B.size()) {
			B[B.size() - A.size()] = '1';
			cout<<B;
		}
		else {
			A[0] = '2';
			cout<<A;
		}
			
	} 
	return 0;
}
반응형