bzoj1709[Usaco2007 Oct Gold]Super Paintball超级弹珠

    xiaoxiao2021-04-15  28

    瞎玩。。10000^2居然能过。。

    #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> #define fo(i,a,b) for(int i=a;i<=b;i++) #define fd(i,a,b) for(int i=a;i>=b;i--) using namespace std; int n,m,k; const int N=2e5+5; const int inf=2147483646; int a[105][105]; inline bool pd(int x,int y) { if (x<1||x>n||y<1||y>n)return 0; return 1; } const int dx[4]={-1,1,-1,1}; const int dy[4]={1,-1,-1,1}; int main() { scanf("%d%d",&n,&k); fo(i,1,k) { int x,y; scanf("%d%d",&x,&y); fo(j,1,n) a[x][j]++,a[j][y]++; fo(k,0,3) { int x1=x+dx[k],y1=y+dy[k]; while (pd(x1,y1)) { a[x1][y1]++; x1+=dx[k],y1+=dy[k]; } } } int ans=0; fo(i,1,n) fo(j,1,n) { if (a[i][j]>=k)++ans; } printf("%d\n",ans); }
    转载请注明原文地址: https://ju.6miu.com/read-671984.html

    最新回复(0)