백준 13410 거꾸로 구구단 C++

2023. 9. 25. 17:13알고리즘문제 풀이/백준

문제

일반적인 구구단에서 가장 큰 수는 마지막 항의 값이 제일 크다. 거꾸로 구구단에서는, 각 항에 구구단의 계산 결과로 나온 값을 뒤집어 저장을 한다. 이렇게 하면 가장 큰 값이 항상 마지막이 아니게 된다. 예를 들어 8단의 9개 항의 값은 8, 16, 24, 32, 40, 48, 56, 64, 72 이 되어 72가 가장 크지만, 거꾸로 구구단에서는 8, 61, 42, 23, 4, 84, 65, 46, 27 가 되어 84가 가장 큰 값을 가지게 된다.

단의 수 N과 항의 수 K가 주어질 때, 거꾸로 구구단의 가장 큰 값을 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 N과 K가 주어진다. 두 수는 모두 1,000보다 작거나 같은 자연수이다.

출력

첫째 줄에 주어진 단과 항에서 나올 수 있는 가장 큰 거꾸로 구구단의 값을 출력한다.

 

풀이

temp1은 기존 구구단 값이다.

temp2는 거꺼로 구구단의 값이다.

max는 거꾸로 구구단의 가장 큰 값이다.

#include <iostream>
using namespace std;

int main() {
	int n, k, max;
	cin >> n >> k;
	max = 0;
	for (int i = 1; i <= k; i++) {
		int temp1, temp2;
		temp1 = n * i;
		//cout << "temp1: " << temp1 << '\n';
		temp2 = 0;
		while (temp1 != 0) {
			temp2 += temp1 % 10;
			temp1 = temp1 / 10;
			if (temp1 != 0) {
				temp2 *= 10;
			}
		}
		//cout << "temp2: " << temp2 << '\n';
		if (temp2 > max) {
			max = temp2;
		}
	}
	//cout << "max: " << max << '\n';
	cout << max;
	return 0;
}

'알고리즘문제 풀이 > 백준' 카테고리의 다른 글

백준 14499 주사위 굴리기 C++  (0) 2023.09.25
백준 13458 시험 감독 C++  (0) 2023.09.25
백준 13277 큰 수 곱셈 Python  (0) 2023.09.25
백준 12865 평범한 배낭 C++  (0) 2023.09.25
백준 12100 2048 (Easy) C++  (0) 2023.09.25