UESTC 1272 Final Pan's prime numbers解答を当てて、むやみに問題をして、数論
Final Pan's prime numbers
Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others)
Submit Status
Final Pan likes prime numbers very much.
One day, he want to find the super prime numbers.A prime numbers n ( n >4) is a super prime number only if n -4 and n +4 are both prime
numbers,too.
Your task is really easy:Give N ,find the maximum super prime number n that n <= N .
Input
Only one integer N.(4Output
If there is no such interger n ,print' −1 ',otherwise print n .
Sample input and output
Sample Input
Sample Output
Source
第7回ACM趣味プログラミングコンテスト第4戦(公式戦)A
My Solution
試合が終わってやっと気づいた.
その时、暴力法で1つ书いて、T 5を渡しましたが、その前にこの书きはきっと正しいと思っていたので、多くのデータを试していませんでした.ずっと最適化を考えていたが、1 e 12は1 sクラスでタイムアウトしないとは考えられなかった.
その时、なぜ警戒していなかったのか、あるいはなぜ1001000を入力しなかったのか、すぐに分かった.
7だけ・・・ プログラムで証明することができて、1 e 7まで大体1分で計算することができて、1 e 12の2時間余りでも7を計算することができます///**/注釈で落としたものを削除すれば証明できます.
むやみに問題をやったり、むやみに問題をやったり、答えを当てたりします.
ありがとう
Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others)
Submit Status
Final Pan likes prime numbers very much.
One day, he want to find the super prime numbers.A prime numbers n ( n >4) is a super prime number only if n -4 and n +4 are both prime
numbers,too.
Your task is really easy:Give N ,find the maximum super prime number n that n <= N .
Input
Only one integer N.(4
If there is no such interger n ,print' −1 ',otherwise print n .
Sample input and output
Sample Input
Sample Output
8
7
Source
第7回ACM趣味プログラミングコンテスト第4戦(公式戦)A
My Solution
試合が終わってやっと気づいた.
その时、暴力法で1つ书いて、T 5を渡しましたが、その前にこの书きはきっと正しいと思っていたので、多くのデータを试していませんでした.ずっと最適化を考えていたが、1 e 12は1 sクラスでタイムアウトしないとは考えられなかった.
その时、なぜ警戒していなかったのか、あるいはなぜ1001000を入力しなかったのか、すぐに分かった.
7だけ・・・ プログラムで証明することができて、1 e 7まで大体1分で計算することができて、1 e 12の2時間余りでも7を計算することができます///**/注釈で落としたものを削除すれば証明できます.
むやみに問題をやったり、むやみに問題をやったり、答えを当てたりします.
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
//using namespace std;
//int a[1000000];
/*
bool isPrime(long long n)
{
if(n < 2) return false;
if(n == 2) return true;
if(n%2 == 0) return false;
int ok = (int)sqrt(n);
for(long long i = 3; i <= ok; i += 2)
if(n%i == 0) return false;
return true;
}
*/
int main()
{
long long n/*,t*/;
scanf("%lld",&n);
if(n>=7) printf("7");
else printf("-1");
//t=0;
//for(unsigned i=n+4;i>0;i--)
// if(isPrime(i)) {/*a[t]=i;t++;*/printf("%d,",i);}
//for(int i=0;i<t;i++)
// printf("%d",a[i]);
//cout<<t<<" ";
/* for(long long i=n+4;i>0;i--){
if(isPrime(i)) {
if(isPrime(i-4)&&isPrime(i-8))
printf("%lld",i-4);
}
}
*/
return 0;
}
ありがとう