結果

問題 No.407 鴨等素数間隔列の数え上げ
ユーザー vorg101
提出日時 2016-08-06 01:05:16
言語 Go
(1.23.4)
結果
TLE  
実行時間 -
コード長 507 bytes
コンパイル時間 13,721 ms
コンパイル使用メモリ 223,480 KB
実行使用メモリ 19,840 KB
最終ジャッジ日時 2024-11-07 00:43:04
合計ジャッジ時間 19,608 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 5
other AC * 27 TLE * 2 -- * 2
権限があれば一括ダウンロードができます

ソースコード

diff #

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