結果
問題 | No.1233 割り切れない気持ち |
ユーザー | semisagi |
提出日時 | 2020-09-18 22:01:15 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 121 ms / 3,153 ms |
コード長 | 1,581 bytes |
コンパイル時間 | 3,199 ms |
コンパイル使用メモリ | 111,544 KB |
実行使用メモリ | 52,096 KB |
最終ジャッジ日時 | 2024-06-22 19:15:45 |
合計ジャッジ時間 | 5,792 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 39 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Versioning; using System.Text; using System.Threading.Tasks; namespace ConsoleApp3 { class Program { static void Main(string[] args) { var scanner = new Scanner(); int N = scanner.NextInt(); long[] A = new long[N]; long[] F = new long[400001]; long total = 0; for (int i = 0; i < N; i++) { A[i] = scanner.NextInt(); F[A[i]]++; total += A[i]; } long[] S = new long[400002]; for (int i = 0; i <= 400000; i++) { S[i + 1] = S[i] + F[i]; } long answer = total * N; for (long i = 1; i <= 200000; i++) { for (long j = 0; i * j <= 200000; j++) { answer -= i * j * (S[i * (j + 1)] - S[i * j]) * F[i]; } } Console.WriteLine(answer); } } class Scanner { int index = 0; string[] tokens = { }; public string Next() { if (index == tokens.Length) { index = 0; tokens = Console.ReadLine().Split(' '); } return tokens[index++]; } public int NextInt() { return int.Parse(Next()); } public long NextLong() { return long.Parse(Next()); } public double NextDouble() { return double.Parse(Next()); } } }