Submission #3494645
Source Code Expand
from collections import Counter as C def gcd(a, b): if b == 0: return a else: return gcd(b, a % b) T = [[0, 1], [1, 0]] for i in range(1, 50): for j in range(1, 50): if gcd(i,j) == 1: T.append([i, j]) T.append([i, -j]) N = int(input()) X = [] for i in range(N): x, y = map(int, input().split()) X.append([x, y]) def exc(c): ret = 0 if c >= 4: ret += (c*(c-1)*(c-2)*(c-3))//24 if c>= 3: ret += ((c*(c-1)*(c-2))//6) * (N-c) return ret ans = (N*(N-1)*(N-2)*(N-3))//24 for a, b in T: Y = C([a * x[0] + b * x[1] for x in X]).values() for y in Y: if y >= 3: ans -= exc(y) print (ans % (10**9+7))
Submission Info
Submission Time | |
---|---|
Task | B - よんてん |
User | Kiri8128 |
Language | Python (3.4.3) |
Score | 50 |
Code Size | 757 Byte |
Status | TLE |
Exec Time | 2104 ms |
Memory | 5876 KB |
Judge Result
Set Name | level1 | level2 | level3 | level4 | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 4 / 4 | 16 / 16 | 30 / 30 | 0 / 50 | ||||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
level1 | 04/04_input00, 04/04_input01, 04/04_input02, 04/04_input03, 04/04_input04, 04/04_input05, 04/04_input06, 04/04_sample1 |
level2 | 04/04_input00, 04/04_input01, 04/04_input02, 04/04_input03, 04/04_input04, 04/04_input05, 04/04_input06, 04/04_sample1, 16/16_input05, 16/16_input06, 16/16_input07, 16/16_input08, 16/16_input09, 16/16_input10, 16/16_input11, 16/16_input12, 16/16_input13, 16/16_input14, 16/16_input15, 16/16_input16, 16/16_input17, 16/16_input18, 16/16_input19, 16/16_input20, 16/16_input21, 16/16_input22, 16/16_input23, 16/16_input24, 16/16_input64, 16/16_input65, 16/16_input66, 16/16_input67, 16/16_sample2 |
level3 | 04/04_input00, 04/04_input01, 04/04_input02, 04/04_input03, 04/04_input04, 04/04_input05, 04/04_input06, 04/04_sample1, 16/16_input05, 16/16_input06, 16/16_input07, 16/16_input08, 16/16_input09, 16/16_input10, 16/16_input11, 16/16_input12, 16/16_input13, 16/16_input14, 16/16_input15, 16/16_input16, 16/16_input17, 16/16_input18, 16/16_input19, 16/16_input20, 16/16_input21, 16/16_input22, 16/16_input23, 16/16_input24, 16/16_input64, 16/16_input65, 16/16_input66, 16/16_input67, 16/16_sample2, 30/30_input25, 30/30_input26, 30/30_input27, 30/30_input28, 30/30_input29, 30/30_input30, 30/30_input31, 30/30_input32, 30/30_input33, 30/30_input34, 30/30_input35, 30/30_input36, 30/30_input37, 30/30_input38, 30/30_input39, 30/30_input40, 30/30_input41, 30/30_input42, 30/30_input43, 30/30_input44, 30/30_input68, 30/30_input69 |
level4 | 04/04_input00, 04/04_input01, 04/04_input02, 04/04_input03, 04/04_input04, 04/04_input05, 04/04_input06, 04/04_sample1, 16/16_input05, 16/16_input06, 16/16_input07, 16/16_input08, 16/16_input09, 16/16_input10, 16/16_input11, 16/16_input12, 16/16_input13, 16/16_input14, 16/16_input15, 16/16_input16, 16/16_input17, 16/16_input18, 16/16_input19, 16/16_input20, 16/16_input21, 16/16_input22, 16/16_input23, 16/16_input24, 16/16_input64, 16/16_input65, 16/16_input66, 16/16_input67, 16/16_sample2, 30/30_input25, 30/30_input26, 30/30_input27, 30/30_input28, 30/30_input29, 30/30_input30, 30/30_input31, 30/30_input32, 30/30_input33, 30/30_input34, 30/30_input35, 30/30_input36, 30/30_input37, 30/30_input38, 30/30_input39, 30/30_input40, 30/30_input41, 30/30_input42, 30/30_input43, 30/30_input44, 30/30_input68, 30/30_input69, 50/50_input45, 50/50_input46, 50/50_input47, 50/50_input48, 50/50_input49, 50/50_input50, 50/50_input51, 50/50_input52, 50/50_input53, 50/50_input54, 50/50_input55, 50/50_input56, 50/50_input57, 50/50_input58, 50/50_input59, 50/50_input60, 50/50_input61, 50/50_input62, 50/50_input63, 50/50_input70, 50/50_input71, 50/50_input72, 50/50_input73 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
04/04_input00 | AC | 43 ms | 3700 KB |
04/04_input01 | AC | 43 ms | 3700 KB |
04/04_input02 | AC | 43 ms | 3700 KB |
04/04_input03 | AC | 44 ms | 3700 KB |
04/04_input04 | AC | 43 ms | 3700 KB |
04/04_input05 | AC | 43 ms | 3700 KB |
04/04_input06 | AC | 44 ms | 3700 KB |
04/04_sample1 | AC | 45 ms | 3700 KB |
16/16_input05 | AC | 103 ms | 3700 KB |
16/16_input06 | AC | 125 ms | 3700 KB |
16/16_input07 | AC | 106 ms | 3700 KB |
16/16_input08 | AC | 64 ms | 3700 KB |
16/16_input09 | AC | 49 ms | 3700 KB |
16/16_input10 | AC | 55 ms | 3572 KB |
16/16_input11 | AC | 110 ms | 3700 KB |
16/16_input12 | AC | 70 ms | 3572 KB |
16/16_input13 | AC | 67 ms | 3700 KB |
16/16_input14 | AC | 91 ms | 3700 KB |
16/16_input15 | AC | 67 ms | 3700 KB |
16/16_input16 | AC | 86 ms | 3700 KB |
16/16_input17 | AC | 99 ms | 3700 KB |
16/16_input18 | AC | 121 ms | 3700 KB |
16/16_input19 | AC | 56 ms | 3700 KB |
16/16_input20 | AC | 111 ms | 3700 KB |
16/16_input21 | AC | 111 ms | 3700 KB |
16/16_input22 | AC | 71 ms | 3700 KB |
16/16_input23 | AC | 74 ms | 3700 KB |
16/16_input24 | AC | 84 ms | 3700 KB |
16/16_input64 | AC | 48 ms | 3700 KB |
16/16_input65 | AC | 55 ms | 3700 KB |
16/16_input66 | AC | 64 ms | 3700 KB |
16/16_input67 | AC | 129 ms | 3700 KB |
16/16_sample2 | AC | 45 ms | 3700 KB |
30/30_input25 | AC | 803 ms | 4016 KB |
30/30_input26 | AC | 807 ms | 4000 KB |
30/30_input27 | AC | 414 ms | 3828 KB |
30/30_input28 | AC | 427 ms | 3828 KB |
30/30_input29 | AC | 676 ms | 3984 KB |
30/30_input30 | AC | 795 ms | 4000 KB |
30/30_input31 | AC | 505 ms | 3828 KB |
30/30_input32 | AC | 397 ms | 3828 KB |
30/30_input33 | AC | 352 ms | 3828 KB |
30/30_input34 | AC | 532 ms | 3828 KB |
30/30_input35 | AC | 881 ms | 3956 KB |
30/30_input36 | AC | 163 ms | 3700 KB |
30/30_input37 | AC | 508 ms | 3828 KB |
30/30_input38 | AC | 503 ms | 3828 KB |
30/30_input39 | AC | 613 ms | 3828 KB |
30/30_input40 | AC | 265 ms | 3700 KB |
30/30_input41 | AC | 372 ms | 3828 KB |
30/30_input42 | AC | 790 ms | 3956 KB |
30/30_input43 | AC | 553 ms | 3828 KB |
30/30_input44 | AC | 728 ms | 3956 KB |
30/30_input68 | AC | 773 ms | 4000 KB |
30/30_input69 | AC | 833 ms | 4016 KB |
50/50_input45 | TLE | 2104 ms | 5352 KB |
50/50_input46 | TLE | 2104 ms | 4480 KB |
50/50_input47 | AC | 1131 ms | 4084 KB |
50/50_input48 | TLE | 2104 ms | 5468 KB |
50/50_input49 | TLE | 2104 ms | 4464 KB |
50/50_input50 | TLE | 2104 ms | 5096 KB |
50/50_input51 | TLE | 2104 ms | 5496 KB |
50/50_input52 | TLE | 2104 ms | 4912 KB |
50/50_input53 | TLE | 2104 ms | 5608 KB |
50/50_input54 | TLE | 2104 ms | 4472 KB |
50/50_input55 | TLE | 2104 ms | 5788 KB |
50/50_input56 | TLE | 2104 ms | 4496 KB |
50/50_input57 | TLE | 2104 ms | 5428 KB |
50/50_input58 | TLE | 2104 ms | 5392 KB |
50/50_input59 | TLE | 2104 ms | 5048 KB |
50/50_input60 | TLE | 2088 ms | 4420 KB |
50/50_input61 | TLE | 2104 ms | 5548 KB |
50/50_input62 | AC | 1745 ms | 4348 KB |
50/50_input63 | TLE | 2104 ms | 5744 KB |
50/50_input70 | AC | 885 ms | 4028 KB |
50/50_input71 | TLE | 2102 ms | 4456 KB |
50/50_input72 | TLE | 2104 ms | 5284 KB |
50/50_input73 | TLE | 2104 ms | 5876 KB |