临汾市网站建设_网站建设公司_字体设计_seo优化
2025/12/25 15:57:32 网站建设 项目流程

P1206 [USACO1.2] 回文平方数 Palindromic Squares

题目描述

回文数是指从左向右念和从右向左念都一样的数。如123211232112321就是一个典型的回文数。

给定一个用十进制表示的正整数BBB,输出所有[1,300][1,300][1,300]中,它的平方用BBB进制表示时是回文数的数。

输入格式

共一行,一个单独的正整数BBB

输出格式

每行两个BBB进制的符合要求的数字,第二个数是第一个数的平方,且第二个数是回文数。

注意大于999的数,用字母表示。如用A表示101010B表示111111,用第nnn个大写字母表示n+9n+9n+9

输入输出样例 #1

输入 #1

10

输出 #1

1 1 2 4 3 9 11 121 22 484 26 676 101 10201 111 12321 121 14641 202 40804 212 44944 264 69696

说明/提示

【数据范围】
对于100%100\%100%的数据,2≤B≤202 \le B \le 202B20

题目翻译来自NOCOW。

USACO Training Section 1.2

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;// 严格要求 (将long long 类型取别名)stringfunc(ll x,ll n){//当前x转n进制string s="";while(x){ll d=x%n;if(d>=10)s+=char(d-10+'A');elses+=char(d+'0');x/=n;}reverse(s.begin(),s.end());returns;}boolfunc1(string s){//判断字符串是否回文string s1=s;reverse(s.begin(),s.end());if(s==s1){returntrue;}returnfalse;}intmain(){ios::sync_with_stdio(0);// 提高cin、cout的运行速度cin.tie(0);cout.tie(0);ll n;cin>>n;for(ll i=1;i<=300;i++){string s1=func(pow(i,2),n);//求当前数i的平方的n进制字符串string s2=func(i,n);//求当前数i的n进制字符串if(func1(s1)){//如果是当前 i的平方的b进制字符串是回文串 则输出当前数的n进制数 以及当前数平方的n进制数cout<<s2<<" "<<s1<<endl;}}return0;}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询