首页 > vijos > vijos_1042

vijos_1042

2009年11月4日 moradin 发表评论 阅读评论

捕风捉影-20min-数值

Hint

1、直接用筛10^8准备打表,打出400M的txt才意识到问题
2、用字符串构造回文验证素数
3、TLE,测试极限数据时发现没有比9989899大的回文素数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
var f:boolean;
    a,b,i,j:longint;
    s:string;
function check(n:longint):boolean;
var i,j,k:longint;
begin
  k:=round(sqrt(n));
  for i:=2 to k do
    if n mod i=0 then begin
      check:=false;
      exit;
    end;
  check:=true;
end;
begin
  readln(a,b);
  if b>9989899 then b:=9989899;
  for i:=a to b do begin
    str(i,s);
    f:=true;
    for j:=1 to length(s) div 2 do
      if s[j]<>s[length(s)-j+1] then begin
        f:=false;
        break;
      end;
    if f and check(i) then writeln(i);
  end;
end.

编译通过…
├ 测试数据 01:答案正确… 0ms
├ 测试数据 02:答案正确… 0ms
├ 测试数据 03:答案正确… 0ms
├ 测试数据 04:答案正确… 0ms
├ 测试数据 05:答案正确… 0ms
├ 测试数据 06:答案正确… 0ms
├ 测试数据 07:答案正确… 681ms
├ 测试数据 08:答案正确… 556ms
├ 测试数据 09:答案正确… 0ms
├ 测试数据 10:答案正确… 619ms
————————-
Accepted 有效得分:100 有效耗时:1856ms

分类: vijos 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
评论头像:请点击注册,可用于所有wordpress的评论
注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。