프로그래밍 문법/c++

문자열형 숫자를 숫자형으로 표현

씩씩한 IT블로그 2020. 6. 21. 21:36
반응형
char형으로 된 숫자를 숫자형으로 바꾸고 싶을때는 다음과 같이 쓸 수 있다.

string N;
int temp = (N[i] - '0');

 

예시문제) [boj]10610_30

#include <iostream>
#include <algorithm>
#include <string>

using namespace std;

int main() {
	string N;
	cin >> N;
	
	bool isInZero=false;
	int sum=0;

	//3의 배수 and 10의배수 ?
	for (int i = 0; i < N.size(); i++) {
		int temp = (N[i] - '0');  //문자열 -> 숫자
		sum += temp;
		if (!temp) {
			isInZero = true;
		}
	}

	if (sum % 3 != 0 or not isInZero) {
		cout << -1;
	}
	else {
		sort(N.begin(), N.end(),greater<char>());
		cout << N << endl;
	}
	return 0;
}
반응형