내가 짰는데 이해 못함

#1092 - 함께 문제 푸는 날

C++
#include <iostream>
#include <cstdio>
#include <algorithm>

using namespace std;

bool descending(unsigned int a, unsigned int b){
	return a > b;
}

int main() {
	unsigned int input[3];
	for(int i = 0; i < sizeof(input) / 4; i++){
		cin >> input[i];
	}
	
	sort(input, input + 3, descending);

	unsigned int max = input[0];
	unsigned int mid = input[1];
	unsigned int min = input[2];

	if(min == max) printf("%u\n", max);
	else if(mid == max){
		unsigned int sum = max;
		while(sum % min != 0) sum += max;
		printf("%u\n", sum);
	}
	else{
		unsigned int sum = min * mid;
		while(sum % max != 0) sum += min * mid;
		printf("%u\n", sum);
	}

	return 0;
}

먼가 다르게 풀고 싶어서 이렇게 짠 거 같은데 이왜맞?

대충 짜놓고 돌려봤는데 돌리면서 당연히 틀리겠지 했는데 정답입니다 하면 오히려 놀라죠 ㅋㅋㅋ

2 Likes

이왜맞