关闭

USACO 1.2.4 Palindromic Squares

223人阅读 评论(0) 收藏 举报

/*
PROG: palsquare
LANG: C++
*/

#include 
<iostream>
#include 
<fstream>
#include 
<string>
#include 
<cmath>
using namespace std;
ifstream fin(
"palsquare.in");
ofstream fout(
"palsquare.out");
int B;
char c[32];
bool hui(char c[],int l)
{
    
int i=1;
    
while( c[i]==c[l])
     i
++,l--;
    
if( i>=l) return true;
    
else return false;
}

void output(int p,char c[],int l)
{
    
char a[32],k=0;
    
while( p>0)
    
{
        k
++;
        a[k]
=p%B;
        
if(a[k]<10)a[k]+=48;
            
else a[k]=a[k]-10+65;
        p
/=B;
    }

    
for(;k>0;k--) fout<<a[k];
        fout
<< ' ';
    
for(int i=1;i<=l;i++) fout<<c[i];
        fout
<<endl;
}

void check(int num)
{
    
int p=num*num,k=0;
    
while( p>0)
    
{
        k
++;
        c[k]
=p%B;
        
if(c[k]<10)c[k]+=48;
            
else c[k]=c[k]-10+65;
        p
/=B;
    }

    
if( hui (c,k)) output( num,c,k);
}

int main()
{
    fin
>>B;
    
for(int i=1;i<=300;i++)
      check(i);
    
   
return 0;
}

 
Compiling...
Compile: OK

Executing...
      Test 
1: TEST OK [0.004 secs]
      Test 
2: TEST OK [0.004 secs]
      Test 
3: TEST OK [0.004 secs]
      Test 
4: TEST OK [0.004 secs]
      Test 
5: TEST OK [0.004 secs]
      Test 
6: TEST OK [0 secs]
      Test 
7: TEST OK [0 secs]
      Test 
8: TEST OK [0.004 secs]

All tests OK.

YOUR PROGRAM (
'palsquare') WORKED FIRST TIME!
 That
's fantastic -- and a rare thing. 
Please accept these special automated congratulations. 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4572次
    • 积分:144
    • 等级:
    • 排名:千里之外
    • 原创:9篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档