結果

問題 No.407 鴨等素数間隔列の数え上げ
コンテスト
ユーザー vorg101
提出日時 2016-08-06 01:05:16
言語 Go
(1.26.1)
コンパイル:
env GOCACHE=/tmp go build _filename_
実行:
./Main
結果
TLE  
実行時間 -
コード長 507 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 15,952 ms
コンパイル使用メモリ 270,284 KB
実行使用メモリ 22,656 KB
最終ジャッジ日時 2026-05-07 07:47:49
合計ジャッジ時間 16,985 ms
ジャッジサーバーID
(参考情報)
judge2_1 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 5
other AC * 29 TLE * 2
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

package main

import (
	"fmt"
	"math"
	"container/list"
)

func isPrime(n int) bool {
	for i := 3; i <= int(math.Sqrt(float64(n))); i += 2 {
		if n % i == 0 {
			return false
		}
	}
	return true
}

func main() {
	var n, l, ans int
	fmt.Scan(&n, &l)
	prime := list.New()
	if 2 <= (l+1)/(n-1) {
		prime.PushBack(2)
	}
	for i := 3; i <= l/(n-1); i += 2 {
		if isPrime(i) {
			prime.PushBack(i)
		}
	}
	for e := prime.Front(); e != nil; e = e.Next() {
		ans += l - e.Value.(int)*(n-1) + 1
	}
	fmt.Println(ans)
}
0