【Un PAT par jour】 1019 Nombre palindromique général

Utilisé directement la fonction de récupération du palindrome de 1015, deuxième réponse

Des idées

Utilisez un tableau dynamique pour stocker chaque chiffre. Créez
plutôt un nouveau chiffre pour déterminer s'il est égal au chiffre d'origine.

#include <cstdio>
#include <cmath>
#include <vector>
using namespace std;
vector<int> num;
int reverse(int n,int r)
{
    int result = 0;
    do {
        num.push_back(n%r);
        n /= r;
    }while (n != 0);
    for (int i = num.size()-1; i >= 0 ; --i) {
        result += num[num.size()-i-1]*pow(r,i);
    }
    return result;
}
int main()
{
    int N,b;
    scanf("%d %d",&N,&b);
    int reverse_n = reverse(N,b);
    if(reverse_n == N) printf("Yes\n");
    else  printf("No\n");
    for (int i = num.size()-1; i >=0; --i)
    {
        printf("%d",num[i]);
        if(i != 0) printf(" ");
    }
}

Je suppose que tu aimes

Origine www.cnblogs.com/xinyuLee404/p/12728859.html
conseillé
Classement