Bob's Problem

Accepted : 18   Submit : 115
Time Limit : 1000 MS   Memory Limit : 65536 KB 

题目描述

Bob今天碰到一个问题,他想知道x3+y3 = c 是否存在正整数解?

输入

第一行是一个整数K(K≤20000),表示样例的个数。 以后每行一个整数c(2≤c≤109)

输出

每行输出一个样例的结果,如果存在,输出“Yes”,否则输出“No”。(引号不用输出)

样例输入

2
28
27

样例输出

Yes
No

哈希

 #include<iostream>
#include<stdio.h>
#include<cstring>
#include<cstdlib>
#include<algorithm>
using namespace std;
const int INF = ;
int a[]; struct node
{
int num;
struct node *next;
};
struct node f[INF]; void Insert(int x)
{
struct node *p,*q;
int k;
k=x%INF;
p=&f[k];
while( p!=NULL && p->num!=x)
{
p=p->next;
}
if( p==NULL )
{
q=(struct node*)malloc(sizeof(struct node));
q->next=f[k].next;
q->num=x;
f[k].next=q;
}
}
bool found(int x)
{
int k;
struct node *p;
k=x%INF;
p=&f[k];
while( p!=NULL && p->num!=x)
{
p=p->next;
}
if( p==NULL)
return false;
if( p->num==x)
return true;
}
void prepare()
{
int i,j;
for(i=;i<=;i++)
a[i]=i*i*i; for(i=;i<INF;i++)
{
f[i].num=;
f[i].next=NULL;
}
for(i=;i<=;i++)
for(j=i;j<=;j++)
{
Insert(a[i]+a[j]);
}
}
int main()
{
int n,i,x;
prepare();
while(scanf("%d",&n)>)
{
for(i=;i<=n;i++)
{
scanf("%d",&x);
if( found(x)==true )
printf("Yes\n");
else printf("No\n");
}
}
return ;
}

set

 #include<iostream>
#include<stdio.h>
#include<cstring>
#include<cstdlib>
#include<set>
#include<algorithm>
using namespace std; int a[];
set<int> Q;
void prepare()
{
int i,j;
for(i=;i<=;i++)
a[i]=i*i*i;
Q.clear();
for(i=;i<=;i++)
for(j=i;j<=;j++)
Q.insert(a[i]+a[j]);
}
int main()
{
int T,n;
prepare();
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
int flag=Q.count(n);
if(flag==)printf("No\n");
else printf("Yes\n");
}
return ;
}

最新文章

  1. 每天一个设计模式-2 外观模式(Facade)
  2. 利用Python【Orange】结合DNA序列进行人种预测
  3. samtools常用命令详解
  4. 二分搜索 UVALive 6076 Yukari&#39;s Birthday (12长春K)
  5. 8个节点MySQL-cluster安装和配置,含两个管理节点
  6. firefox浏览器live http headers无法使用
  7. hdu 1005 java(System.out.println();与System.out.println(“\n”);)
  8. respondsToSelector的使用
  9. DevExpress.XtraCharts.chartControl
  10. MVC中实现多按钮提交(转)
  11. C++外观设计模式模式(三)
  12. 简单总结下 cookie、session
  13. 用Python进行SQLite数据库操作
  14. kali自定义分辨率(1920*1080)
  15. BZOJ2801/洛谷P3544 [POI2012]BEZ-Minimalist Security(题目性质发掘+图的遍历+解不等式组)
  16. 极客时间|AI技术内参
  17. mysql 案例 ~ pt-archiver 归档工具的使用
  18. Python数据结构———队列
  19. laravel5.6上传图片及显示
  20. cf280C. Game on Tree(期望线性性)

热门文章

  1. Day 13 迭代器,生成器.
  2. jzoj5804
  3. SecureCRT连接Ubuntu,centos失败,长时间的重新连接,连接不了解决办法
  4. 6. Ensemble learning &amp; AdaBoost
  5. ubuntu sudo: pip:找不到命令
  6. redis允许内网访问
  7. HTTP请求头及其作用 转
  8. Monkey捕获Crash原理
  9. [转]Elasticsearch Java API总汇
  10. implements和extends的区别