집가기 아쉬워서 한 문제 더 풀었다~

레벨테스트 원샷원킬 너무 기분좋다 ㅋㅋㅋㅋㅋㅋ

아니 여기 너무 공개된곳이라 평소 말투 쓰긴 어렵지만 기분 좋다^^

수 뒤집기도 레벨 테스트 문제인데 이문제는 조금 생각을 했다.

수를 뒤집고 원래 숫자랑 더하고 그 숫자에 대해 대칭인지 아닌지 판단하는 것이다.

하지만 나에겐 한 조각 케익이었다. 후후훗

숫자가 대칭인지 아닌지는 배열을 이용해서 bool원소를 처음에 true로 설정해주고 아닐경우 false로 바꿔주는 방식으로 했다.

개소리지만 나는 뒤집기를 좋아한다. 뭔가 한쪽이 일방적으로 이기는것은 재미도 없고, 지는 쪽은 맘이 약해져서 응원하게 된다. 그래서 항상 역전이 짜릿하고 멋지다. 나도 지금은 바텀이지만 언젠가 세상을 뒤집을 것이다.

이게 내 포부다. ㅋㅋㅋㅋㅋㅋㅋㅋ오글거리지만 나는 항상 생각한다. from bottom to the top!.!

#include <iostream>

using namespace std;

int main()
{
	int N;
	cin >> N;
	int arr[100];
	while (N--) {
		int input,copy,sum,reverse=0;
		int i = 0;
		bool T = true;
		cin >> input;
		copy = input;
		while (1) {
			
			reverse += input % 10;
			if (input / 10 == 0) {
				break;
			}
			reverse *= 10;
			input /= 10;
		}//역수 만들기
		sum = copy + reverse;

		while (1) {
			arr[i] = sum % 10;
			i++;
			if (sum / 10 == 0) {
				break;
			}
			sum /= 10;
		}//배열에 숫자 넣기

		//i번째 숫자랑 첫번째 숫자부터 차근차근 비교한다. i/2까지만 비교하면 된다. 앞뒤 비교이기 때문
		for (int j = 0; j < i / 2; j++) {
			if (arr[j] != arr[i - 1 - j]) {
				T = false;
			}
		}
		if (T)
			cout << "YES" << endl;
		else
			cout << "NO" << endl;
	}
}

+ Recent posts