日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

洛谷 P1207 [USACO1.2]双重回文数 Dual Palindromes

發布時間:2025/4/16 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 洛谷 P1207 [USACO1.2]双重回文数 Dual Palindromes 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?P1207 [USACO1.2]雙重回文數 Dual Palindromes

題目描述

如果一個數從左往右讀和從右往左讀都是一樣,那么這個數就叫做“回文數”。例如,12321就是一個回文數,而77778就不是。當然,回文數的首和尾都應是非零的,因此0220就不是回文數。

事實上,有一些數(如21),在十進制時不是回文數,但在其它進制(如二進制時為10101)時就是回文數。

編一個程序,從文件讀入兩個十進制數N (1 <= N <= 15)S (0 < S < 10000)然后找出前N個滿足大于S且在兩種或兩種以上進制(二進制至十進制)上是回文數的十進制數,輸出到文件上。

本問題的解決方案不需要使用大于32位的整型

輸入輸出格式

輸入格式:

?

只有一行,用空格隔開的兩個數N和S。

?

輸出格式:

?

N行, 每行一個滿足上述要求的數,并按從小到大的順序輸出。

?

輸入輸出樣例

輸入樣例#1:?復制 3 25 輸出樣例#1:?復制 26 27 28

說明

題目翻譯來自NOCOW。

USACO Training Section 1.2

思路:模擬

#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int n,s,num; int prime[100]; int main(){scanf("%d%d",&n,&s);for(int i=s+1;i;i++){if(num==n) break;int tot=0;for(int j=2;j<=10;j++){int k=i,flag=0,pos=0;while(k){prime[++pos]=k%j;k/=j;}for(int l=1;l<=pos/2;l++)if(prime[l]!=prime[pos-l+1])flag=1;if(!flag) tot++;}if(tot>=2) cout<<i<<endl,num++;} }

?

轉載于:https://www.cnblogs.com/cangT-Tlan/p/7856122.html

總結

以上是生活随笔為你收集整理的洛谷 P1207 [USACO1.2]双重回文数 Dual Palindromes的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。