noi 第n小的质数
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
-
输入一个正整数n,求第n小的质数。
- 输入
- 一个不超过10000的正整数n。
- 输出
- 第n小的质数。
- 样例输入
-
10
- 样例输出
-
29 一定要注意范围范围范围!!!!
开数组一定要注意!!!!!!
第一次很装逼的用了结构体,毕竟是会的东西之一,结果:
Runtime Error#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#define M 10001 using namespace std;
int n;
struct Q{
int top;
int s[M];
void jiajia()
{
top++;
}
int add(int x)
{
s[top]=x;
}
Q()//初始化
{
top=;
}
}q; int pd(int x)
{
if(x==||x==) return ;
if(x%== || x==) return ;
int j=;
while(j<=sqrt(x)&&x%j!=) j+=;
if(x%j==) return ;
else return ;
} void Q_work()
{
q.jiajia();
q.add();
for(int i=;;i++)
{
if(pd(i))
{
q.jiajia();
q.add(i);
}
if(q.top>)
break;
}
} int main()
{
scanf("%d",&n);
Q_work();
cout<<q.s[n];
return ;
}1
吓的我赶紧改掉结构体里面的初始化,样例过了???
交上:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#define M 10001 using namespace std;
int n;
struct Q{
int top;
int s[M];
void jiajia()
{
top++;
}
int add(int x)
{
s[top]=x;
}
}q; int pd(int x)
{
if(x==||x==) return ;
if(x%== || x==) return ;
int j=;
while(j<=sqrt(x)&&x%j!=) j+=;
if(x%j==) return ;
else return ;
} void Q_work()
{
q.jiajia();
q.add();
for(int i=;;i++)
{
if(pd(i))
{
q.jiajia();
q.add(i);
}
if(q.top>)
break;
}
} int main()
{
scanf("%d",&n);
Q_work();
printf("%d",q.s[n]);
return ;
}2
还是不对???
然后删掉结构体:
A了……
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#define M 10001 using namespace std; int n,top;
int s[M]; int pd(int x)
{
if(x==||x==) return ;
if(x%== || x==) return ;
int j=;
while(j<=sqrt(x)&&x%j!=) j+=;
if(x%j==) return ;
else return ;
} void Q_work()
{
s[++top]=;
for(int i=;;i++)
{
if(pd(i))
{
s[++top]=i;
i++;
}
if(top>)
break;
}
} int main()
{
scanf("%d",&n);
Q_work();
printf("%d",s[n]);
return ;
}3
然而想不通的是:为什么不能使用结构体??
赶紧请教大佬,结果出人意料的错误出现了,详细请看代码:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
//#define M 10001就是这里!!数组开小了应该再加一!!!
#define M 10002 using namespace std; int n; struct Q{
int top;
Q()
{
top=;
}
int s[M];
void jiajia()
{
top++;
}
int add(int x)
{
s[top]=x;
}
}q; int pd(int x)
{
if(x==||x==) return ;
if(x%== || x==) return ;
int j=;
while(j<=sqrt(x)&&x%j!=) j+=;
if(x%j==) return ;
else return ;
} void Q_work()
{
q.jiajia();
q.add();
for(int i=;;i++)
{
if(pd(i))
{
q.jiajia();
q.add(i);
}
if(q.top>) //因为结束条件是q.top>10000所以需要使用到10001个,所以数组需要开到10002
//if(q.top>=10000) 或者上面不改,改这里
break;
}
} int main()
{
scanf("%d",&n);
Q_work();
printf("%d",q.s[n]);
return ;
}4
End.
noi 第n小的质数的更多相关文章
- NOI 1.5 44:第n小的质数
---恢复内容开始--- 描述 输入一个正整数n,求第n小的质数. 输入 一个不超过10000的正整数n. 输出 第n小的质数. 样例输入 10 样例输出 29 方法1:合数一定可以表示成一个比它小的 ...
- NOI 1.5编程基础之循环控制 44:第n小的质数
描述 输入一个正整数n,求第n小的质数. 输入 一个不超过10000的正整数n. 输出 第n小的质数. 样例输入 10 样例输出 29
- 39:第n小的质数
39:第n小的质数 总时间限制: 1000ms 内存限制: 65536kB描述 输入一个正整数n,求第n小的质数.输入 一个不超过10000的正整数n.输出 ...
- 第n小的质数
总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个正整数n,求第n小的质数. 输入 一个不超过10000的正整数n. 输出 第n小的质数. 样例输入 10 样例输出 29 代碼 ...
- NOI 2009A 诗人小G
NOI 2009A 诗人小G 诗人小G [问题描述] 小G是一个出色的诗人,经常作诗自娱自乐.但是,他一直被一件事情所困扰,那就是诗的排版问题. 一首诗包含了若干个句子,对于一些连续的短句,可以将它们 ...
- [BZOJ 1563] [NOI 2009] 诗人小G(决策单调性)
[BZOJ 1563] [NOI 2009] 诗人小G(决策单调性) 题面 一首诗包含了若干个句子,对于一些连续的短句,可以将它们用空格隔开并放在一行中,注意一行中可以放的句子数目是没有限制的.小 G ...
- 1.5编程基础之循环控制44:第n小的质数
#include<iostream>#include<cmath>using namespace std;int main(){ int n; cin>>n; in ...
- NOI 2009 诗人小G
题目描述 Description 小G是一个出色的诗人,经常作诗自娱自乐.但是,他一直被一件事情所困扰,那就是诗的排版问题. 一首诗包含了若干个句子,对于一些连续的短句,可以将它们用空格隔开并放在一行 ...
- java小程序 质数
package com.test; import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; im ...
随机推荐
- Neo4j
Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中.它是一个嵌入式的.基于磁盘的.具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做 ...
- 【搜索】n的约数
题目链接:传送门 [题解]: 考察dfs和质因数分解,首先开一个prime数组. 参数解释: 1.当前值的大小.[利用题目的n来控制范围] 2.控制下界,每次都是以某一个质数开始搜索, pos 3.控 ...
- java的设计模式的一些链接,站在巨人的肩膀上,才能看的更远。(均来源与网上的各个大牛的博客中)
创建型抽象工厂模式 http://www.cnblogs.com/java-my-life/archive/2012/03/28/2418836.html工厂方法 http://www.cnblogs ...
- POJ 2485 Prim 找最长的边
A国没有高速公路,因此A国的交通很困难.政府意识到了这个问题并且计划建造一些高速公路,以至于可以在不离开高速公路的情况下在任意两座城镇之间行驶. A国的城镇编号为1到N, 每条高速公路连接这两个城镇, ...
- seaborn:一个更强大的画图工具
数据加载: 1. Countplot 和之前的pandas绘图相比,使用countplot可以自动计算每类的数量. 2. KDE Plot KDE,是"kernel density esti ...
- react hooks学习
接触React项目快两个月了,还在研究摸索各种知识点的过程中,充实且幸福. 在项目中学习新知识,还是很有效率的,一边写项目,一边实验新的知识点,比如react hooks!嘻嘻嘻~~~ 写了好一段时间 ...
- css三大特性及权重说明
一.三大特性简述 层叠性: 后来的覆盖前面的 (长江后浪推前浪) 继承性: 子标签会继承父标签的某些样式 (跟文字有关的一般都会继承) 优先级: 设计到一个算法“css特殊性(Specificity) ...
- Ubuntu + Django(DRF) + channels(websocket)+NGINX + uwsgi 环境部署
原来uwsgi并不能启动 asgi 呀!现在才知道,就因为这一点我花了一周时间才成功啊!!!!!!!! 是呀!你启动uwsgi 是将你的项目启动了,可是你也发现虽然启动了,但是你的websocke ...
- paypal支付 NVP支付 paypal 手续费 GetTransactionDetails
主要内容: 本文章主要讲解的是NVP的对接,以最简单的接口案例,讲解一下对接NVP的方案. 先提供下paypal 官方文档的主要功能对接说明,如下 1.请求API 服务器端点 描述 https://a ...
- 修改一张MyISAM表row_format为fixed为InnoDB表报错处理
最近优化GTID模式下事务表和非事务表更新报错处理时,发现某几张表更改存储引擎为InnoDB报错如下: mysql> alter table sc_xxx_video_xxxxengine = ...