Submission #2548625
Source Code Expand
void main() { auto ip = readAs!(int[]), N = ip[0], Q = ip[1]; auto a = new uint[](N+1); foreach(_; 0..Q) { auto ip2 = readAs!(int[]), l = ip2[0], r = ip2[1]; a[l-1]++; a[r]--; } int tmp; foreach(i; 0..N+1) { a[i] += tmp; tmp = a[i]; } a.popBack; a.map!(b => b & 1 ? 1 : 0).each!write; writeln; } // =================================== import std.stdio; import std.string; import std.conv; import std.algorithm; import std.range; import std.traits; import std.math; import std.container; import std.bigint; import std.numeric; import std.conv; import std.typecons; import std.uni; import std.ascii; import std.bitmanip; import core.bitop; T readAs(T)() if (isBasicType!T) { return readln.chomp.to!T; } T readAs(T)() if (isArray!T) { return readln.split.to!T; } T[][] readMatrix(T)(uint height, uint width) if (!isSomeChar!T) { auto res = new T[][](height, width); foreach(i; 0..height) { res[i] = readAs!(T[]); } return res; } T[][] readMatrix(T)(uint height, uint width) if (isSomeChar!T) { auto res = new T[][](height, width); foreach(i; 0..height) { auto s = rs; foreach(j; 0..width) res[i][j] = s[j].to!T; } return res; } int ri() { return readAs!int; } double rd() { return readAs!double; } string rs() { return readln.chomp; } T[] deepcopy(T)(T[] a) { static if(isArray!T) { T[] res; foreach(i; a) { res ~= deepcopy(i); } return res; } else { return a.dup; } } ulong[] generate_prime_list(T)(T N) if(isIntegral!T) { ulong[] prime_list = [2]; bool not_prime = false; foreach(i; 3..N.to!ulong+1) { foreach(j; prime_list) { if(i % j == 0) { not_prime = true; break; } } if(!not_prime) prime_list ~= i; not_prime = false; } return prime_list; } bool isPrime(ulong n) { if(n <= 1) return false; else if(n == 2) return true; else if(n % 2 == 0) return false; foreach(i; iota(3, n.to!double.sqrt.ceil+1, 2)) { if(n % i == 0) return false; } return true; } class UnionFind(T) { T[] arr; this(ulong n) { arr.length = n+1; arr[] = -1; } T root(T x) { return arr[x] < 0 ? x : root(arr[x]); } bool same(T x, T y) { return root(x) == root(y); } bool unite(T x, T y) { x = root(x); y = root(y); if(x == y) return false; if(arr[x] > arr[y]) swap(x, y); arr[x] += arr[y]; arr[y] = x; return true; } T size(T a) { return -arr[root(a)]; } }
Submission Info
Submission Time | |
---|---|
Task | C - オセロ |
User | private_yusuke |
Language | D (DMD64 v2.070.1) |
Score | 100 |
Code Size | 2503 Byte |
Status | AC |
Exec Time | 228 ms |
Memory | 3836 KB |
Judge Result
Set Name | Sample | Subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 60 / 60 | 40 / 40 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | 00_example_01.txt, 00_example_02.txt |
Subtask1 | 00_example_01.txt, 00_example_02.txt, 10_small_01.txt, 10_small_02.txt, 10_small_03.txt, 10_small_04.txt, 10_small_05.txt, 10_small_06.txt, 10_small_07.txt, 10_small_08.txt, 10_small_09.txt, 10_small_10.txt |
All | 00_example_01.txt, 00_example_02.txt, 10_small_01.txt, 10_small_02.txt, 10_small_03.txt, 10_small_04.txt, 10_small_05.txt, 10_small_06.txt, 10_small_07.txt, 10_small_08.txt, 10_small_09.txt, 10_small_10.txt, 20_rand_01.txt, 20_rand_02.txt, 20_rand_03.txt, 20_rand_04.txt, 20_rand_05.txt, 20_rand_06.txt, 20_rand_07.txt, 20_rand_08.txt, 20_rand_09.txt, 20_rand_10.txt, 30_max_01.txt, 30_max_02.txt, 30_max_03.txt, 30_max_04.txt, 30_max_05.txt, 40_corner_01.txt, 40_corner_02.txt, 40_corner_03.txt, 40_corner_04.txt, 40_corner_05.txt, 40_corner_06.txt, 40_corner_07.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_example_01.txt | AC | 1 ms | 256 KB |
00_example_02.txt | AC | 1 ms | 256 KB |
10_small_01.txt | AC | 2 ms | 380 KB |
10_small_02.txt | AC | 1 ms | 256 KB |
10_small_03.txt | AC | 1 ms | 256 KB |
10_small_04.txt | AC | 2 ms | 380 KB |
10_small_05.txt | AC | 1 ms | 256 KB |
10_small_06.txt | AC | 1 ms | 380 KB |
10_small_07.txt | AC | 1 ms | 256 KB |
10_small_08.txt | AC | 1 ms | 256 KB |
10_small_09.txt | AC | 1 ms | 256 KB |
10_small_10.txt | AC | 1 ms | 256 KB |
20_rand_01.txt | AC | 116 ms | 1532 KB |
20_rand_02.txt | AC | 29 ms | 3324 KB |
20_rand_03.txt | AC | 12 ms | 1020 KB |
20_rand_04.txt | AC | 68 ms | 1404 KB |
20_rand_05.txt | AC | 31 ms | 1276 KB |
20_rand_06.txt | AC | 65 ms | 1532 KB |
20_rand_07.txt | AC | 15 ms | 1404 KB |
20_rand_08.txt | AC | 4 ms | 508 KB |
20_rand_09.txt | AC | 44 ms | 1276 KB |
20_rand_10.txt | AC | 20 ms | 1404 KB |
30_max_01.txt | AC | 224 ms | 3836 KB |
30_max_02.txt | AC | 228 ms | 2300 KB |
30_max_03.txt | AC | 224 ms | 3580 KB |
30_max_04.txt | AC | 224 ms | 2300 KB |
30_max_05.txt | AC | 224 ms | 2300 KB |
40_corner_01.txt | AC | 177 ms | 1276 KB |
40_corner_02.txt | AC | 211 ms | 2300 KB |
40_corner_03.txt | AC | 210 ms | 3836 KB |
40_corner_04.txt | AC | 226 ms | 2300 KB |
40_corner_05.txt | AC | 200 ms | 2300 KB |
40_corner_06.txt | AC | 177 ms | 1276 KB |
40_corner_07.txt | AC | 211 ms | 2300 KB |