結果
| 問題 | 
                            No.1500 Super Knight
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2021-05-07 23:19:55 | 
| 言語 | PyPy3  (7.3.15)  | 
                    
| 結果 | 
                             
                                WA
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 691 bytes | 
| コンパイル時間 | 306 ms | 
| コンパイル使用メモリ | 81,792 KB | 
| 実行使用メモリ | 58,624 KB | 
| 最終ジャッジ日時 | 2024-09-15 11:26:11 | 
| 合計ジャッジ時間 | 2,635 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge6 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 WA * 1 | 
| other | AC * 4 WA * 29 | 
ソースコード
import sys
input = lambda : sys.stdin.readline().rstrip()
sys.setrecursionlimit(2*10**5+10)
write = lambda x: sys.stdout.write(x+"\n")
debug = lambda x: sys.stderr.write(x+"\n")
n = int(input())
dxy = [
    [3,0],[-3,0],
    [0,3],[0,-3],
    [2,3],[3,2],
    [-2,3],[-3,2],
    [2,-3],[3,-2],
    [-2,-3],[-3,-2]
]
def sub(n):
    s = set()
    v = (0,0)
    s = [v]
    for _ in range(n):
        ns = set()
        for v in s:
            xx,yy = v
            for x,y in dxy:
                ns.add((x+xx,y+yy))
        s = ns
    return (s)
if n<7:
    ans = len(sub(n))
elif n%2==0:
    ans = ((6*n+1)**2 - 1)//2 - (n**2) + 1
else:
    ans = ((6*n+1)**2 - 1)//2 - (n**2-1)
print(ans)