반응형

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

 

10610번: 30

어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한

www.acmicpc.net

 

0이 하나 있고, 모든 자릿수 합이 3의 배수라면, 30의 배수가 될 수 있었습니다.

 

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

string s;
bool hasZero = false;
int sum = 0;

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

	cin >> s;
	for (auto ss : s) {
		hasZero |= ss == '0';
		sum += ss - '0';
	}
	if (hasZero && sum % 3 == 0) {
		sort(s.begin(), s.end(), greater<>());
		cout << s;
	}
	else cout << -1;
}
반응형

'Algorithm' 카테고리의 다른 글

백준 1212 : 8진수 2진수  (0) 2021.11.20
백준 10798 : 세로읽기  (0) 2021.11.20
백준 16948 : 데스 나이트  (0) 2021.11.20
백준 1259 : 팰린드롬수  (0) 2021.11.20
백준 3009 : 네 번째 점  (0) 2021.11.20

+ Recent posts