본문 바로가기
IT/BOJ

백준(BOJ) 11068 회문인 숫자 *

by 빨강자몽 2018. 8. 16.


# 수학

어려운 문제는 아닌데 초기화 하는부분을 밑에써서 문제가 생겼었다.

질문 게시판을 보니 다른분도 비슷한 실수를 하신 분이 있었따....


#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <vector>
#include <queue>
#include <set>
#include <map>
#define MAX 1005
#define INF 987654321
#define MOD 31991
#pragma warning(disable:4996)
using namespace std;
typedef long long ll;
typedef pair<int, int> pi;

int n,m;
deque<int> dq;

bool fun1(int in)
{
    for(int i=2;i<=64;i++)
    {
        int tmp=in;
        dq.clear();
        while(tmp!=0)
        {
            dq.push_front(tmp%i);
            tmp/=i;
        }
        while(dq.size()>1&&dq.front()==dq.back())
        {
            dq.pop_back();
            dq.pop_front();
        }
        if(dq.size()==1||dq.size()==0)
            return true;
        // dq.clear();
        // 실수한 부분 : 만약에 dq에 1개의 수가 남아 회문인 경우 다음 값을 확인할떄 문제발생
    }
    return false;
}

int main()
{
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&m);
        if(fun1(m))
            printf("1\n");
        else
            printf("0\n");
    }
    return 0;
}



'IT > BOJ' 카테고리의 다른 글

백준(BOJ) 10250 ACM 호텔 *  (0) 2018.08.21
백준(BOJ) 13333 Q-인덱스 *  (0) 2018.08.17
백준(BOJ) 13328 Message Passing *  (0) 2018.08.11
백준(BOJ) 14753 MultiMax  (0) 2018.08.10
백준(BOJ) 13325 이진트리 *  (0) 2018.08.10