📄 1319f.cpp
字号:
/*
1319f Prime Cuts
Time Limit : 1000 ms Memory Limit : 32768 K Output Limit : 256 K
GUN C++
*/
#include<iostream>
#include<cmath>
using namespace std;
bool Isprime(int number)
{
//用2、3、4…Sqrt(n)去除n
for(int i=2;i<=sqrt(number);i++)
if(number%i==0)
return false;
return true;//没有一个试用除数能被n整除时,则n是素数
}
int main()
{
//input
int Num,C,PrimeList[200],i,j,k,length;
while(cin>>Num>>C)
{
//init
j=0;
length=0;
//compute PrimeList
for(i=1;i<=Num;i++)
{
if(Isprime(i))
{
PrimeList[j]=i;
j++;
length++;
}
}
PrimeList[j]='\0';
cout<<Num<<" "<<C<<": ";
if(2*C-1>=length&&length%2!=0) //长度为奇数,直径大于表长
{
for(k=0;k<length-1;k++)
cout<<PrimeList[k]<<" ";
cout<<PrimeList[k]<<endl;
}
else
if(2*C>=length&&length%2==0) //偶数,直径大于表长
{
for(k=0;k<length-1;k++)
cout<<PrimeList[k]<<" ";
cout<<PrimeList[k]<<endl;
}
else
{
if(length%2==0)
{
for(k=(length/2-C);k<(length/2-C)+2*C-1;k++)
cout<<PrimeList[k]<<" ";
cout<<PrimeList[k]<<endl;
}
else
{
for(k=(length/2-C+1);k<(length/2-C+1)+2*C-1-1;k++)
cout<<PrimeList[k]<<" ";
cout<<PrimeList[k]<<endl;
}
}
cout<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -