站外题求助,玄关
  • 板块灌水区
  • 楼主lyx703
  • 当前回复13
  • 已保存回复13
  • 发布时间2023/10/6 15:30
  • 上次更新2023/11/2 15:15:01
查看原帖
站外题求助,玄关
931976
lyx703楼主2023/10/6 15:30

题目描述

输入两个正整数 p,y (2≤p≤y≤109 ),然后挂会找到一个最大的不超过 y 的正整数 k ,满足 k 不是 2∼p 中任意一个数的倍数。容易发现,这样的 k 一定存在,因为 1 始终满足条件。

输入格式

一行两个正整数 p,y 。

输出格式

一行一个正整数表示答案。

限制与约定

对于 10% 的数据,p,y≤100 。

对于 50% 的数据,p,y≤105 。

对于 100% 的数据,2≤p≤y≤109 。

时间限制:1s

空间限制:512MB


20分代码附上

#include<bits/stdc++.h>
using namespace std;
long long p,y;//含义如题 

int main()
{
	cin>>p>>y;
	for(int i=y;i>min(p,y-200);i--)
	{
		for(int j=2;j<=min((long long)sqrt(i),p);j++)
		{
			if(i%j==0)
			continue;
			cout<<i;
			return 0;
		}
		
	}
	
	cout<<1;

} 

思路有点乱,求大佬指正

2023/10/6 15:30
加载中...