結果
問題 | No.732 3PrimeCounting |
ユーザー | 37zigen |
提出日時 | 2020-07-02 22:49:27 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 2,341 ms / 3,000 ms |
コード長 | 1,495 bytes |
コンパイル時間 | 3,182 ms |
コンパイル使用メモリ | 76,380 KB |
実行使用メモリ | 59,432 KB |
最終ジャッジ日時 | 2023-10-13 10:38:16 |
合計ジャッジ時間 | 53,929 ms |
ジャッジサーバーID (参考情報) |
judge12 / judge11 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 163 ms
58,068 KB |
testcase_01 | AC | 164 ms
57,800 KB |
testcase_02 | AC | 176 ms
59,280 KB |
testcase_03 | AC | 180 ms
58,908 KB |
testcase_04 | AC | 180 ms
58,448 KB |
testcase_05 | AC | 179 ms
58,668 KB |
testcase_06 | AC | 177 ms
58,744 KB |
testcase_07 | AC | 179 ms
58,856 KB |
testcase_08 | AC | 179 ms
58,632 KB |
testcase_09 | AC | 181 ms
58,640 KB |
testcase_10 | AC | 180 ms
58,692 KB |
testcase_11 | AC | 180 ms
59,160 KB |
testcase_12 | AC | 181 ms
58,740 KB |
testcase_13 | AC | 180 ms
58,868 KB |
testcase_14 | AC | 181 ms
58,708 KB |
testcase_15 | AC | 182 ms
58,688 KB |
testcase_16 | AC | 179 ms
56,988 KB |
testcase_17 | AC | 180 ms
58,640 KB |
testcase_18 | AC | 181 ms
58,884 KB |
testcase_19 | AC | 181 ms
59,032 KB |
testcase_20 | AC | 195 ms
58,692 KB |
testcase_21 | AC | 221 ms
58,476 KB |
testcase_22 | AC | 220 ms
58,240 KB |
testcase_23 | AC | 186 ms
59,432 KB |
testcase_24 | AC | 185 ms
58,632 KB |
testcase_25 | AC | 262 ms
58,728 KB |
testcase_26 | AC | 244 ms
59,132 KB |
testcase_27 | AC | 199 ms
58,836 KB |
testcase_28 | AC | 200 ms
58,852 KB |
testcase_29 | AC | 216 ms
58,720 KB |
testcase_30 | AC | 216 ms
58,684 KB |
testcase_31 | AC | 223 ms
58,772 KB |
testcase_32 | AC | 254 ms
58,844 KB |
testcase_33 | AC | 254 ms
58,700 KB |
testcase_34 | AC | 251 ms
58,840 KB |
testcase_35 | AC | 239 ms
56,928 KB |
testcase_36 | AC | 239 ms
58,724 KB |
testcase_37 | AC | 190 ms
58,772 KB |
testcase_38 | AC | 191 ms
58,724 KB |
testcase_39 | AC | 237 ms
58,724 KB |
testcase_40 | AC | 233 ms
58,692 KB |
testcase_41 | AC | 233 ms
58,960 KB |
testcase_42 | AC | 235 ms
58,900 KB |
testcase_43 | AC | 217 ms
58,684 KB |
testcase_44 | AC | 219 ms
58,812 KB |
testcase_45 | AC | 202 ms
59,236 KB |
testcase_46 | AC | 201 ms
58,892 KB |
testcase_47 | AC | 208 ms
58,724 KB |
testcase_48 | AC | 271 ms
59,032 KB |
testcase_49 | AC | 269 ms
56,600 KB |
testcase_50 | AC | 218 ms
58,696 KB |
testcase_51 | AC | 219 ms
58,428 KB |
testcase_52 | AC | 202 ms
58,488 KB |
testcase_53 | AC | 346 ms
58,908 KB |
testcase_54 | AC | 1,138 ms
59,044 KB |
testcase_55 | AC | 1,173 ms
58,900 KB |
testcase_56 | AC | 1,192 ms
58,912 KB |
testcase_57 | AC | 506 ms
59,156 KB |
testcase_58 | AC | 507 ms
58,648 KB |
testcase_59 | AC | 357 ms
59,152 KB |
testcase_60 | AC | 604 ms
58,788 KB |
testcase_61 | AC | 602 ms
58,640 KB |
testcase_62 | AC | 1,382 ms
58,844 KB |
testcase_63 | AC | 826 ms
58,740 KB |
testcase_64 | AC | 684 ms
58,812 KB |
testcase_65 | AC | 676 ms
58,908 KB |
testcase_66 | AC | 185 ms
58,652 KB |
testcase_67 | AC | 185 ms
59,020 KB |
testcase_68 | AC | 1,277 ms
58,812 KB |
testcase_69 | AC | 1,262 ms
58,732 KB |
testcase_70 | AC | 1,179 ms
58,456 KB |
testcase_71 | AC | 1,193 ms
58,744 KB |
testcase_72 | AC | 817 ms
58,644 KB |
testcase_73 | AC | 1,852 ms
58,896 KB |
testcase_74 | AC | 1,827 ms
58,452 KB |
testcase_75 | AC | 259 ms
58,640 KB |
testcase_76 | AC | 1,246 ms
58,644 KB |
testcase_77 | AC | 521 ms
58,736 KB |
testcase_78 | AC | 1,530 ms
58,980 KB |
testcase_79 | AC | 1,235 ms
58,696 KB |
testcase_80 | AC | 1,471 ms
58,904 KB |
testcase_81 | AC | 1,210 ms
58,840 KB |
testcase_82 | AC | 196 ms
58,780 KB |
testcase_83 | AC | 501 ms
58,904 KB |
testcase_84 | AC | 525 ms
58,732 KB |
testcase_85 | AC | 1,040 ms
58,768 KB |
testcase_86 | AC | 1,491 ms
59,036 KB |
testcase_87 | AC | 2,214 ms
58,436 KB |
testcase_88 | AC | 2,341 ms
58,960 KB |
ソースコード
import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { long curtime=System.currentTimeMillis(); new Main().run(); System.err.println(System.currentTimeMillis()-curtime); } int MAX=300001; boolean[] isPrime=new boolean[MAX]; ArrayList<Integer> primes=new ArrayList<>(); { Arrays.fill(isPrime, true); isPrime[0]=isPrime[1]=false; for(int i=2;i<isPrime.length;++i) { if(!isPrime[i])continue; primes.add(i); for(long j=(long)i*i;j<isPrime.length;j+=i) isPrime[(int)j]=false; } } void run() { Scanner sc=new Scanner(System.in); int N=sc.nextInt();//5<=N<=1e5 long[] dp=new long[MAX]; for(int i=0;i<primes.size();++i) { int p=primes.get(i); if(p>N)break; ++dp[p+p]; for(int j=i+1;j<primes.size();++j) { int q=primes.get(j); if(q>N)break; dp[p+q]+=2; } } long ans=0; int src=0; for(int p:primes) { if(p>N)break; while(src<primes.size()&&primes.get(src)-p<=0)++src; for(int i=src;i<primes.size();++i) { int target=primes.get(i); ans+=dp[target-p]; } } //a+b+c が 素数 かつ a==b==c は存在しない。 for(int p:primes) { if(p>N)break; for(int q:primes) { if(q>N)break; if(isPrime[p+p+q]) { ans-=3; } } } if(ans%6!=0)throw new AssertionError(); System.out.println(ans/6); } void tr(Object...objects) {System.out.println(Arrays.deepToString(objects));} }