zoukankan      html  css  js  c++  java
  • codevs 最佳落点(模拟)

    /*
    这题并没有A掉 自己电脑上运行ok提交就不对
    预处理攻击范围 然后模拟
    求大神看看有没有错误 
    Orz 
    */
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #define ll long long
    using namespace std;
    ll g[25][25],ans=-10000000;
    int n,m,f[125][125],px,py;
    char s;
    ll F(int x,int y)
    {
        ll sum=0;
        for(int i=1;i<=m;i++)
          for(int j=1;j<=n;j++)
            {
              int nx=px+i-x;
              int ny=py+j-y;
              if(nx<=n&&nx>0&&ny<=m&&ny>0&&f[nx][ny]==1)sum+=g[i][j];
            }
        return sum;
    }
    int main()
    {
        int x=0,y=0,o=0;
        memset(f,-1,sizeof(f));
        x++;
        while(1)
          {
              s=getchar();y++;
              if(s=='.')f[x][y]=1;
            px=max(px,x);py=max(py,y);
              if(s=='
    ')o++,y=0;
              if(o%2==0&&o!=0&&s=='
    ')x++,y=0;
            if(s>='0'&&s<='9')break;
          }
        int p=0;
        while(s>='0'&&s<='9')
          {
              p=p*10+s-'0';s=getchar();
          }
        n=p;
        px=(px+1)/2;py=(py+1)/2;
        cin>>m;
        for(int i=1;i<=m;i++)
          for(int j=1;j<=n;j++)
            cin>>g[i][j];
        for(int i=1;i<=m;i++)
          for(int j=1;j<=n;j++)
            ans=max(ans,F(i,j));
        printf("%lld
    ",ans);
        return 0;
    }
  • 相关阅读:
    猜数字游戏(补)
    团队项目五(项目回顾)
    项目回顾
    第二次阶段冲刺
    团队项目(任务三):第一次冲刺
    个人项目(一):新猜数字
    课后作业(一)
    团队任务二
    团队任务(一)
    课后作业(一)
  • 原文地址:https://www.cnblogs.com/yanlifneg/p/5539968.html
Copyright © 2011-2022 走看看