Submission #169350
Source Code Expand
import std.algorithm; import std.array; import std.bigint; import std.container; import std.conv; import std.exception; import std.math; import std.range; import std.stdio; import std.string; import std.typecons; import std.functional; version = C; T[] readlnSome(T)(){ return array(readln().split().map!(a => to!T(a))()); } T readlnOne(T)(){ return to!T(readln().split()[0]); } void main() { version(A) { auto ns = readlnSome!uint[0 .. 2]; writeln(ns[1] - ns[0] + 1); } version(B) { uint[string] tb; foreach(i; 0 .. readlnOne!uint) tb[readlnOne!string] += 1; Tuple!(string, uint)[] arr; foreach(k, v; tb) arr ~= tuple(k, v); arr.sort!"a[1] > b[1]"(); writeln(arr[0][0]); } version(C) { immutable N = readlnOne!uint; uint[] cn; foreach(i; 0 .. N) cn ~= readlnOne!uint; auto idx = iota(cn.length).array; uint calc(in size_t[] idx){ bool[] tbl = new bool[idx.length]; foreach(i, e; idx){ if(i != idx.length - 1) foreach(j, a; idx[i+1 .. $]) if(cn[a] % cn[e] == 0) tbl[j + i + 1] = !tbl[j + i + 1]; } //writeln(tbl); return reduce!"a + !b"(0, tbl); } //writeln(cn); //writeln(idx); real sum = 0; uint cnt; do{ sum += calc(idx); ++cnt; //writeln(idx); }while(nextPermutation(idx)); //writeln(idx); writefln("%.6f", sum / cnt); } } bool nextPermutation(alias less="a<b", BidirectionalRange) (ref BidirectionalRange range) if (isBidirectionalRange!BidirectionalRange && hasSwappableElements!BidirectionalRange) { // Ranges of 0 or 1 element have no distinct permutations. if (range.empty) return false; auto i = retro(range); auto last = i.save; // Find last occurring increasing pair of elements size_t n = 1; for (i.popFront(); !i.empty; i.popFront(), last.popFront(), n++) { if (binaryFun!less(i.front, last.front)) break; } if (i.empty) { // Entire range is decreasing: it's lexicographically the greatest. So // wrap it around. range.reverse(); return false; } // Find last element greater than i.front. auto j = find!((a) => binaryFun!less(i.front, a))( takeExactly(retro(range), n)); assert(!j.empty); // shouldn't happen since i.front < last.front swap(i.front, j.front); reverse(takeExactly(retro(range), n)); return true; }
Submission Info
Submission Time | |
---|---|
Task | C - コイン |
User | k3kaimu |
Language | D (DMD 2.060) |
Score | 99 |
Code Size | 2725 Byte |
Status | TLE |
Exec Time | 2037 ms |
Memory | 1956 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 99 / 99 | 0 / 1 | ||||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
Subtask1 | subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt |
Subtask2 | subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 22 ms | 828 KB |
sample_02.txt | AC | 58 ms | 928 KB |
sample_03.txt | AC | 23 ms | 748 KB |
subtask1_01.txt | AC | 26 ms | 732 KB |
subtask1_02.txt | AC | 24 ms | 840 KB |
subtask1_03.txt | AC | 21 ms | 924 KB |
subtask1_04.txt | AC | 68 ms | 1444 KB |
subtask1_05.txt | AC | 81 ms | 1428 KB |
subtask1_06.txt | AC | 66 ms | 1044 KB |
subtask1_07.txt | AC | 87 ms | 1364 KB |
subtask1_08.txt | AC | 23 ms | 924 KB |
subtask1_09.txt | AC | 28 ms | 924 KB |
subtask1_10.txt | AC | 67 ms | 1448 KB |
subtask1_11.txt | AC | 24 ms | 808 KB |
subtask1_12.txt | AC | 63 ms | 1436 KB |
subtask1_13.txt | AC | 23 ms | 924 KB |
subtask1_14.txt | AC | 27 ms | 928 KB |
subtask1_15.txt | AC | 71 ms | 1440 KB |
subtask1_16.txt | AC | 83 ms | 1372 KB |
subtask1_17.txt | AC | 72 ms | 1376 KB |
subtask1_18.txt | AC | 72 ms | 1568 KB |
subtask1_19.txt | AC | 69 ms | 1444 KB |
subtask1_20.txt | AC | 72 ms | 1444 KB |
subtask2_01.txt | TLE | 2029 ms | 1948 KB |
subtask2_02.txt | TLE | 2031 ms | 1956 KB |
subtask2_03.txt | TLE | 2031 ms | 1896 KB |
subtask2_04.txt | TLE | 2030 ms | 1956 KB |
subtask2_05.txt | TLE | 2032 ms | 1948 KB |
subtask2_06.txt | TLE | 2030 ms | 1956 KB |
subtask2_07.txt | TLE | 2031 ms | 1956 KB |
subtask2_08.txt | TLE | 2037 ms | 1944 KB |
subtask2_09.txt | TLE | 2031 ms | 1952 KB |
subtask2_10.txt | TLE | 2030 ms | 1956 KB |
subtask2_11.txt | TLE | 2029 ms | 1952 KB |
subtask2_12.txt | TLE | 2032 ms | 1936 KB |
subtask2_13.txt | TLE | 2031 ms | 1952 KB |
subtask2_14.txt | TLE | 2034 ms | 1952 KB |
subtask2_15.txt | TLE | 2030 ms | 1952 KB |
subtask2_16.txt | TLE | 2033 ms | 1956 KB |
subtask2_17.txt | TLE | 2030 ms | 1940 KB |
subtask2_18.txt | TLE | 2031 ms | 1952 KB |
subtask2_19.txt | TLE | 2030 ms | 1888 KB |
subtask2_20.txt | TLE | 2030 ms | 1880 KB |