C++ 牛客网普及组第二次测试B
链接:https://www.nowcoder.com/acm/contest/165/B
来源:牛客网
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
输入一个n,输出小于等于n最大的质数。
输入描述:
输入一个整数n
输出描述:
输出小于等于n的最大的质数
输入
复制
2
输出
复制
2
输入
复制
100
输出
复制
97
备注:
对于所有数据: 2 <= n <= 100000000000030分: n <= 10000070分: n <= 1000000000 看起来,明显是水题一道,可是,大家如果想要拿满100分的话,大家就需要注意一下数据范围,就在上方。大家可以发现,如果我们只是用平常的方法来解决这一个问题的话是明显不行的。我们需要对我们的方法进行一次完善,以应对这道题的数据(以后也可以用)。1.开long long 不必多说。2.因为题目要求是输出小于等于n最大的质数,所以我们只需要从这个数开始循环,直到2(因为1并没有什么作用,1并不是素数)。这样就可以减少计算,减少时间的浪费。3.在判断素数的时候,只需要判断在sqrt(n)之前的数,这样也可以减少时间(sqrt()是开方的意思。为什么只需要前面的数,道理大家想一想就知道了)。4.在判断素数的函数中,为了节省时间,我们可以在发现这个数可以被某个数(不为1和它本身)整除的时候,直接返回0,(代表着不行,也可以用bool类型的false)。如果一直没有找到,便可以在循环的外侧返回1(也就是bool类型的true)。 重点就是这些,主要是节省时间,防止时间超限!!!!!!
#include<bits/stdc++.h> using namespace std; long long n; int ss(long long x) {int flag=0;long long h=sqrt(x);for(long long i=2;i<=h;i++){if(x%i==0){flag=1;return 0;}}return 1; } int main() {cin>>n;for(long long int i=n;i>=2;i--){if(ss(i)==1){cout<<i;return 0;}} }
转载于:https://www.cnblogs.com/FXY-180/p/9657184.html
C++ 牛客网普及组第二次测试B相关推荐
- 2022-1-13牛客网C++项目—— 第二章 Linux 多进程开发(一)
复习用的问题 进程和程序之间的关系是什么? 进程包含了哪些信息? 一.程序当中包含了一系列的信息,这些信息用于描述如何创建一个进程. 1)二进制格式标识:描述文件的格式,内核根据这个信息来解释文件中的 ...
- 2021牛客NOIP提高组第二场T2——方格计数(组合数计数)
方格计数 description solution code description 在左下角是 (
- 牛客网提高组模拟赛第七场 T3 洞穴(附bitset介绍)
就是DP. 我们可以很简单的想到要枚举中间点,进行边数的转移. 但是因为边长数据范围很大,所以我们考虑log的倍增. 状态设计为\(dp[i][j][k]\),为从节点\(i\)走\(2^k\)步能否 ...
- 牛客网数据库SQL实战答案解析上篇
部分解析摘自牛客网讨论分析 查找最晚入职的员工信息 SELECT * FROM employees WHERE hire_date = (SELECT MAX(hire_date) FROM empl ...
- 牛客网数据库SQL实战答案解析下篇
部分答案来自牛客网讨论分析 查找描述信息中包括robot的电影对应的分类名称以及电影数目,而且还需要该分类对应电影数量>=5部 SELECT c.name, COUNT(fc.film_id) ...
- 牛客网循环输入输出测试——C语言scanf和printf用法
在实际的编程中需要自己写出完整的程序,预留好输入的接口,使用while循环接收多个测试用例,C语言在输出时printf要用换行"\n". 字符串输入输出问题见博客:牛客网字符/字符 ...
- sql里查询一个组和组的用户数怎么查?_【牛客网SQL刷题】留存率怎么算?
抽空刷了牛客网SQL实战72题,最后几道以牛客网为例的题目还挺有挑战性,在此记录 统计时间段新用户次日留存率 每日的次日留存率 每日的新用户数 每日新用户的次日留存 求新登录用户次日留存 表login ...
- 牛客网2018年全国多校算法寒假训练营练习比赛(第二场)
A-吐泡泡 链接:https://www.nowcoder.com/acm/contest/74/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语 ...
- 链接:https://ac.nowcoder.com/acm/problem/22228来源:牛客网题目描述 在给定的数组中删除一个数。输入描述:多组测试。每组第一行输入1个整数n(n
链接:登录-专业IT笔试面试备考平台_牛客网 来源:牛客网 题目描述 在给定的数组中删除一个数. 输入描述: 多组测试. 每组第一行输入1个整数n(n<20), 第二行输入n个整数 第三行输入1 ...
- 牛客网 2018年全国多校算法寒假训练营练习比赛(第二场) A.吐泡泡-STL(stack)
不好玩,一堆板子,太菜了,被打爆了,B一直wa60%,D一直wa80%,D改了多组输入就过了... A.吐泡泡 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...
最新文章
- ASP调用存储过程返回了一个参数和一个记录集时出现ADODB.Recordset 错误 '800a0e78'...
- 【BZOJ】1572: [Usaco2009 Open]工作安排Job
- SharpSvn使用说明
- 通过Webservice查询手机号码归属地
- linux能安装音乐软件吗,Linux上如何安装使用音乐软件SoundCloud
- sql-GOTO跳转
- python基础:并行遍历ZIP()函数介绍
- boost::enable_current_exception用法测试程序
- CodeForces - 1509C The Sports Festival(dp)
- java中methods方法_java中Class.getMethod方法
- Max OS X下关于JDK的那些事
- JS设置弹出小窗口。
- Marathon环境下fastdfs和vsftpd和miniIo文件服务器搭建的方式
- CANoe 13 demo 下载和激活
- java 邮件批量发送邮件_利用Java实现电子邮件的批量发送[转载]
- 记录设置VSCode加粗字体
- AndroidP HIDL 转载
- 元宇宙系列--元宇宙介绍
- Delphi/C#之父Anders Hejlsberg
- iPhone4s降级ios6.1.3流程总结