結果

問題 No.3127 Multiple of Twin Prime
ユーザー ID 21712
提出日時 2025-04-25 22:20:18
言語 Go
(1.23.4)
結果
AC  
実行時間 321 ms / 2,500 ms
コード長 573 bytes
コンパイル時間 19,640 ms
コンパイル使用メモリ 254,068 KB
実行使用メモリ 20,404 KB
最終ジャッジ日時 2025-04-25 22:20:50
合計ジャッジ時間 19,815 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 12
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import . "fmt"
import . "sort"
import . "os"
import bf "bufio"

func main() {
	sv:=make([]bool,1e7+4)
	pr:=make([]int,0,6e6)
	sv[1]=true
	for i:=3;i<len(sv);i+=2 {
		if sv[i] {
			continue
		}
		if !sv[i-2] {
			pr=append(pr,(i-2)*i)
		}
		for j:=i+i;j<len(sv);j+=i {
			sv[j]=true
		}
	}
	rd:=bf.NewReader(Stdin)
	var t int
	Fscan(rd,&t)
	for ;t>0;t-- {
		var n int
		Fscan(rd,&n)
		i:=SearchInts(pr,n)
		if i>=len(pr) {
			i--
		}
		if i>=0 && pr[i]<=n {
			Println(pr[i])
		} else if i>0&&pr[i-1]<=n {
			Println(pr[i-1])
		} else {
			Println(-1)
		}
	}
}
0