답안 #973911

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
973911 2024-05-02T12:47:12 Z jakobrs Spiral (BOI16_spiral) C++17
컴파일 오류
0 ms 0 KB
def E(p,n):return sum(v*n**i for i,v in enumerate(p)) 
def r(x,y):
 X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
 return (E([[[-1,2,4,2],[0,4,0,2]],[[-4,10,0,2],[1,2,-4,2]]][x>=0][y>=0],n)+(N*E(rp,N)-n*E(rp,n))//6)*n+((N-n)*f*(f+1))//2*(-1 if(L!=(x >= 0))!=(y>=0)else 1)-8*y*(0<-y<x)
def R(p,q,X,Y):
 X+=1;Y+=1;x=[p,X];y=[q,Y];return sum(r(x[a],y[b])*(1 if(p*X>0 and(abs(X)<abs(p))==a)==(q*Y>0 and(abs(Y)<abs(Q))==b)else -1) for a,b in[(0,0),(0,1),(1,0),(1,1)])%(10**9+7)
I=input
for i in range(int(I().split()[1])):
 print(R(*map(int,I().split())))

Compilation message

spiral.cpp:1:1: error: 'def' does not name a type
    1 | def E(p,n):return sum(v*n**i for i,v in enumerate(p))
      | ^~~
spiral.cpp:3:11: error: 'Y' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |           ^
spiral.cpp:3:20: error: 'n' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |                    ^
spiral.cpp:3:31: error: 'N' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |                               ^
spiral.cpp:3:42: error: 'L' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |                                          ^
spiral.cpp:3:48: error: 'rp' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |                                                ^~
spiral.cpp:3:115: error: 'f' does not name a type
    3 |  X=abs(x);Y=abs(y);n=min(X,Y);N=max(X,Y);L=X<Y;rp=[[[13,15,8],[19,-21,8]],[[19,21,8],[13,-15,8]]][L][[x,y][L]>=0];f=n-([y,x][L]>=0)
      |                                                                                                                   ^
spiral.cpp:6:7: error: 'Y' does not name a type
    6 |  X+=1;Y+=1;x=[p,X];y=[q,Y];return sum(r(x[a],y[b])*(1 if(p*X>0 and(abs(X)<abs(p))==a)==(q*Y>0 and(abs(Y)<abs(Q))==b)else -1) for a,b in[(0,0),(0,1),(1,0),(1,1)])%(10**9+7)
      |       ^
spiral.cpp:6:12: error: 'x' does not name a type
    6 |  X+=1;Y+=1;x=[p,X];y=[q,Y];return sum(r(x[a],y[b])*(1 if(p*X>0 and(abs(X)<abs(p))==a)==(q*Y>0 and(abs(Y)<abs(Q))==b)else -1) for a,b in[(0,0),(0,1),(1,0),(1,1)])%(10**9+7)
      |            ^
spiral.cpp:6:20: error: 'y' does not name a type
    6 |  X+=1;Y+=1;x=[p,X];y=[q,Y];return sum(r(x[a],y[b])*(1 if(p*X>0 and(abs(X)<abs(p))==a)==(q*Y>0 and(abs(Y)<abs(Q))==b)else -1) for a,b in[(0,0),(0,1),(1,0),(1,1)])%(10**9+7)
      |                    ^
spiral.cpp:6:28: error: expected unqualified-id before 'return'
    6 |  X+=1;Y+=1;x=[p,X];y=[q,Y];return sum(r(x[a],y[b])*(1 if(p*X>0 and(abs(X)<abs(p))==a)==(q*Y>0 and(abs(Y)<abs(Q))==b)else -1) for a,b in[(0,0),(0,1),(1,0),(1,1)])%(10**9+7)
      |                            ^~~~~~