結果
問題 | No.72 そろばん Med |
ユーザー |
|
提出日時 | 2020-01-03 20:29:58 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 143 ms / 5,000 ms |
コード長 | 644 bytes |
コンパイル時間 | 3,762 ms |
コンパイル使用メモリ | 74,480 KB |
実行使用メモリ | 41,380 KB |
最終ジャッジ日時 | 2024-11-22 19:25:13 |
合計ジャッジ時間 | 8,973 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 24 |
ソースコード
import java.util.*; import java.io.*; import java.math.*; public class No72 { // private static Set<String> set = new HashSet<String>(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); long n = sc.nextLong(); long ans = 0; long t = 1000007; // a個の時、a+1までの数を表現出来て、これが2箇所に分かれるとして、 // 均等に割った方が良いので、((N+1)/2+1)*(N/2+1)-1ですかね? // modを取るのだけ気を付けないとですね ans = (((n / 2 + 1) % t) * ((n - (n / 2) + 1) % t) - 1) % t; if(ans < 0) { ans += t; } System.out.println(ans); } }