【USACO3-2-3】纺车的轮子 模拟

原题

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>

int x[109][109],y[109][109],v[109],w[109],visit[109];

int main()
{
    for (int i=1;i<=5;i++)
    {
        scanf("%d%d",&v[i],&w[i]);
        for (int j=1;j<=w[i];j++) scanf("%d%d",&x[i][j],&y[i][j]);
    }
    for (int t=0;t<=360;t++)
    {
        for (int i=0;i<=360;i++) visit[i]=0;
        for (int i=1;i<=5;i++)
        {
            for (int j=1;j<=w[i];j++)
            {
                for (int k=x[i][j];k<=x[i][j]+y[i][j];k++) visit[k%360]++;
                x[i][j]=(x[i][j]+v[i])%360;
            }
        }		
        for (int i=0;i<=359;i++) 
            if (visit[i]==5) {printf("%d\n",t);exit(0);}
    }
    
    puts("none");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/dadatu_zhao/article/details/80412234