首页 > 其他分享 >[USACO1.2]回文平方数 Palindromic Squares

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

时间:2023-05-24 19:33:20浏览次数:30  
标签:USACO1.2 平方 Palindromic ss int ## Squares 回文

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

## 题目描述

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

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

## 输入格式

共一行,一个单独的正整数 B。

## 输出格式

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

注意大于 9 的数,用字母表示。如用 `A` 表示 10,`B` 表示 11,用第 n 个大写字母表示 n+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
```

很明显啊,回文数不是什么新鲜事,关键在于数制转换;

#include<bits/stdc++.h>
using namespace std;
int n,a[10001],b[10001],ss,s;
int main()
{
    cin>>n;
    for(int i=1;i<301;i++)
    {
        int op=i*i;
        ss=1,s=1;
        a[1]=op,b[1]=i;
        while(b[s]>=n)//新学的技巧,转换进制
        {
            b[s+1]+=b[s]/n;
            b[s]%=n;
            s++;
        }
        while(a[ss]>=n)
        {
            a[ss+1]+=a[ss]/n;
            a[ss]%=n;
            ss++;
        }
        for(int j=1;j<=ss/2;j++)
            if(a[j]!=a[ss-j+1]) goto nexts;//第一次用go to函数,好帅;
        for(int j=s;j>=1;j--)
            if(b[j]<10) cout<<b[j];
            else cout<<char(55+b[j]);
        cout<<" ";
        for(int j=1;j<=ss;j++)
            if(a[j]<10) cout<<a[j];
            else cout<<char(55+a[j]);
        cout<<endl;
        nexts:;
        memset(a,0,sizeof a);
        memset(b,0,sizeof b);
    }
    return 0;
}

 

标签:USACO1.2,平方,Palindromic,ss,int,##,Squares,回文
From: https://www.cnblogs.com/o-Sakurajimamai-o/p/17429305.html

相关文章

  • hdu 4758 Walk Through Squares(AC自动机+DP,4级)
    WalkThroughSquaresTimeLimit:4000/2000MS(Java/Others)    MemoryLimit:65535/65535K(Java/Others)TotalSubmission(s):234    AcceptedSubmission(s):58ProblemDescription  Onthebeamingdayof60thanniversaryofNJUST,asamilitary......
  • 「解题报告」AGC013E Placing Squares
    想了一会然后看题解,翻到日文题解然后又关了,然后突然会了,怎么回事第一眼生成函数!做不了。考虑经典拆贡献方法,把平方的贡献变成从区间中选两个数的方案数。这样我们可以用一个DP来计数。设\(f_{i,j}\)表示到了第\(i\)格,已经选了\(j\)个数的方案数。如果没有限制,那么就直......
  • CodeForces - 610B Vika and Squares (模拟)
    CodeForces-610BVikaandSquaresTimeLimit: 2000MS MemoryLimit: 262144KB 64bitIOFormat: %I64d&%I64uSubmit StatusDescriptionVikahas n jarswithpaintsofdistinctcolors.Allthejarsarenumberedfrom 1 to n andthe......
  • 深度学习导论知识——最小二乘法(Ordinary Least Squares, OLS)
    1.知识点简介最小二乘法(OrdinaryLeastSquares,OLS)是常见的估计模型参数的方法。早在19世纪,勒让德就认为按照“误差的平方和最小”这个规则估计出来的模型是最接近......
  • [LeetCode] 1332. Remove Palindromic Subsequences 删除回文子序列
    Youaregivenastring s consisting only ofletters 'a' and 'b'.Inasinglestepyoucanremoveone palindromicsubsequence from s.Return the mi......
  • Sum of Squares Theorems
    这个在Cryptography里有用,因为对于大的数找起来很难Legendre'sthreesquaretheorem: apositiveinteger canbeexpressedasasumof4squaresifandonlyifit......
  • D. Many Perfect Squares
    D.ManyPerfectSquaresYouaregivenaset$a_1,a_2,\ldots,a_n$ofdistinctpositiveintegers.Wedefinethesquarenessofaninteger$x$asthenumberof......
  • Squarespace 和 WordPress 的区别
    博主前些天发现了一个巨牛巨好用的刷题网站,忍不住分享一下给大家,......
  • good-article.2--------Longest Palindromic Substring Part I
    Thisinterestingproblemhasbeenfeaturedinthefamous ​​Greplinprogrammingchallenge​​,andisaskedquiteoftenintheinterviews.Why?Becausethis......
  • 洛谷 P1205 [USACO1.2] 方块转换 Transformations
    [USACO1.2]方块转换Transformations题目描述一块\(n\timesn\)正方形的黑白瓦片的图案要被转换成新的正方形图案。写一个程序来找出将原始图案按照以下列转换方法转......