文档章节

USACO1.2Palindromic Squares(palsquare)

jzzlee
 jzzlee
发布于 2012/06/07 17:41
字数 301
阅读 32
收藏 0

        对于1~300的每一个n,计算它的平方数m,将其化为b进制,存入数组a[],然后分别检测是否回文数,如果是,将n转化为b进制,存入数组c[],打印对应的c[],a[]即可。

 

/*
ID:jzzlee1
PROG:palsquare
LANG:C++
*/
#include <fstream>
#include<iostream>
#include<cstring>
using namespace std;
ifstream fin("palsquare.in");
ofstream fout("palsquare.out");
void change(int a[],int b,int n)
{
	int i=0;
	while(n)
	{
		a[i++]=n%b;
		n/=b;
	}
	a[i]=30;
}
char ch[12]={'A','B','C','D','E','F','G','H','I','J',0,0};
void print(int a[],int sz,int b)
{
	int i;
	for(i=sz-1;i>=0;i--)
	{
		if(a[i]>9)
		{
			fout<<ch[a[i]-10];
		}
		else fout<<a[i];
	}
}
int main()
{
	int i;int b,n;int a[20],c[20];
	fin>>b;
	for(n=1;n<=300;n++)
	{
		int m=n*n;
		//m化为b进制,放进数组a[]中
		change(a,b,m);
		int sz;
		for(sz=0;a[sz]!=30;sz++);
		//判断是不是回文数
		bool flag=1;
		for(i=0;flag&&i<=sz/2;i++)
		{
			if(a[sz-1-i]!=a[i])
			flag=0;
		}
		//如果是
		if(flag)
		{
			//n化为b进制,放进数组c[]中
			change(c,b,n);
			int len;
			for(len=0;c[len]!=30;len++);
			//打印n在b进制下的数值,即c[];
			
			print(c,len,b);
			fout<<" ";
			//打印m在b进制下的数值,即a[]
			print(a,sz,b);
			fout<<endl;
		}
		}
	return 0;
}

© 著作权归作者所有

jzzlee
粉丝 8
博文 62
码字总数 28166
作品 0
广州
程序员
私信 提问
多项式拟合和最小二乘问题

背景知识 The method of least squares is a standard approach in regression analysis to the approximate solution of overdetermined systems, i.e., sets of equations in which there ......

SVD
2016/03/15
113
0
[算法竞赛入门经典] Crossword Answers ACM/ICPC World Finals 1994,UVa232

Description A crossword puzzle consists of a rectangular grid of black and white squares and two lists of definitions (or descriptions). One list of definitions is for “words”......

1Kasshole
2018/09/21
0
0
Euler Project Problem 6

The sum of the squares of the first ten natural numbers is, 1 2 + 2 2 + ... + 10 2 = 385 The square of the sum of the first ten natural numbers is, (1 + 2 + ... + 10) 2 = 55 2 =......

长平狐
2012/10/16
55
0
再译《A *路径搜索入门》之一

※※※ 外语不好凑合着看吧,呵呵 ※※※ A 路径搜索入门 A Pathfinding for Beginners 帕特里克·莱斯特发表于2003年10月8日下午8点33人工智能 By Patrick Lester Published Oct 08 2003 08...

放个屁
2015/06/07
139
0
DIY Ruby CPU 分析——Part I

【编者按】原文作者 Emil Soman,Rubyist,除此之外竟然同时也是艺术家,吉他手,Garden City RubyConf 组织者。本文是DIY Ruby CPU Profiling 的第一部分,由 OneAPM 工程师编译整理。 在 ...

OneAPM蓝海讯通
2015/09/25
23
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Security 自定义登录认证(二)

一、前言 本篇文章将讲述Spring Security自定义登录认证校验用户名、密码,自定义密码加密方式,以及在前后端分离的情况下认证失败或成功处理返回json格式数据 温馨小提示:Spring Security...

郑清
25分钟前
2
0
php yield关键字以及协程的实现

php的yield是在php5.5版本就出来了,而在初级php界却很少有人提起,我就说说个人对php yield的理解 Iterator接口 在php中,除了数组,对象可以被foreach遍历之外,还有另外一种特殊对象,也就是继承...

冻结not
38分钟前
3
0
servlet请求和响应的过程

本文转载于:专业的前端网站➥servlet请求和响应的过程 1.加载 Servlet类被加载到Java虚拟机中,并且实例化。在这个过程中,web容器(例如tomcat)会调用Servlet类的公开无参构造函数,产生一...

前端老手
38分钟前
3
0
golang 1.13 errors 包来了,不用写“err 气功波”代码

引 这篇是对 errors 包 的姿势挖掘 气功波错误代码 从 http.Get()返回的错误 判断 syscall.ECONNREFUSED 错误.以前要对 go 标准库 error 结构有点熟悉,才能写出下面的代码 func CmdErr(err ...

guonaihong
42分钟前
28
0
喜玛拉雅已听书单

时间倒序排 书名 作者 状态 唐砖 孑与2 进行中 死灵之书(克苏鲁神话合集) 阿卜杜拉·阿尔哈萨德 进行中 赡养人类 刘慈欣 完结 赡养上帝 刘慈欣 完结 中国太阳 刘慈欣 完结 中国太阳 刘慈欣...

Alex_Java
43分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部