华师一附中OI组
标题:
20141122庆祝家长会之练习题
[打印本页]
作者:
diggersun
时间:
2014-11-22 15:17
标题:
20141122庆祝家长会之练习题
1、 1..9 九个数字分成三组,每组一个三位数都是完全平方数,分别是多少呢?
2、5*5的方格里面摆满了数字,每行一个5位数,每列也是一个5位数,正反对角线也是,这12个5位数都是质数,并且各个数位上的数字和都是P。首行第一个数字是k,输入PK求这样的方阵
3、输入一个m求一个n使得m*n都是由0和1组成。
作者:
hr567
时间:
2014-11-22 17:27
家长会还有礼物啊
有点难呀。
作者:
/wjr/
时间:
2014-11-22 19:51
#include<iostream>
using namespace std;
int a[25],tot;
bool b[10];
int main()
{
for(int i=13;i<=31;i++)
{
int sqrtn=i*i;
int pp=sqrtn/100,qq=(sqrtn/10)%10,rr=sqrtn%10;//pp,qq,rr为第一、二、三位
if(pp!=qq&&qq!=rr&&rr!=pp)a[++tot]=sqrtn;
}
for(int i=1;i<=tot-2;i++)
{
b[a[i]%10]=b[a[i]/100]=b[(a[i]/10)%10]=1;
for(int j=i+1;j<=tot-1;j++)
{
int p=a[j]/100,q=(a[j]/10)%10,r=a[j]%10;
if(b[p]==0&&b[q]==0&&b[r]==0)
{
b[p]=b[q]=b[r]=1;
for(int k=j+1;k<=tot;k++)
{
int ppp=a[k]/100,qqq=(a[k]/10)%10,rrr=a[k]%10;
if(b[ppp]==0&&b[qqq]==0&&b[rrr]==0) cout<<a[i]<<" "<<a[j]<<" "<<a[k]<<endl;
}
b[p]=b[q]=b[r]=0;
}
}
b[a[i]%10]=b[a[i]/100]=b[(a[i]/10)%10]=0;
}
return 0;
}
复制代码
第一题
欢迎光临 华师一附中OI组 (http://hsyit.cn/)
Powered by Discuz! X3.2