zoukankan      html  css  js  c++  java
  • P2280 [HNOI2003]激光炸弹

    题目描述

    输入输出格式

    输入格式:

    输入文件名为input.txt

    输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示 xi,yi ,vi 。

    输出格式:

    输出文件名为output.txt

    输出文件仅有一个正整数,表示一颗炸弹最多能炸掉地图上总价值为多少的目标(结果不会超过32767)。

    输入输出样例

    输入样例#1: 复制
    2 1
    0 0 1
    1 1 1
    
    输出样例#1: 复制
    1


    二维前缀和板子题
    我要说的是一个cin输入问题,此题不能cin>>a>>b>>sum[a+1][b+1]
    我也不知道为什么。。。反正wa了我10多次才发现这个问题


    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define inf 2147483647
    const ll INF = 0x3f3f3f3f3f3f3f3fll;
    #define ri register int
    template <class T> inline T min(T a, T b, T c)
    {
        return min(min(a, b), c);
    }
    template <class T> inline T max(T a, T b, T c)
    {
        return max(max(a, b), c);
    }
    template <class T> inline T min(T a, T b, T c, T d)
    {
        return min(min(a, b), min(c, d));
    }
    template <class T> inline T max(T a, T b, T c, T d)
    {
        return max(max(a, b), max(c, d));
    }
    #define pi acos(-1)
    #define me(x, y) memset(x, y, sizeof(x));
    #define For(i, a, b) for (int i = a; i <= b; i++)
    #define FFor(i, a, b) for (int i = a; i >= b; i--)
    #define mp make_pair
    #define pb push_back
    const int maxn = 100005;
    #define mod 100003
    const int N=100005;
    
    // name*******************************
    int sum[5055][5055];
    int n,x;
    int ans=0;
    // function******************************
    int query(int x1,int y1,int x2,int y2)
    {
        return sum[x1][y1]-sum[x2-1][y1]-sum[x1][y2-1]+sum[x2-1][y2-1];
    }
    
    //***************************************
    int main()
    {
    
    //    freopen("outout.txt","r",stdin);
        cin>>n>>x;
        int a,b,vi;
    
        For(i,1,n)
        {
            cin>>a>>b;
            cin>>sum[a+1][b+1];
        }
        For(i,1,5001)
        {
            For(j,1,5001)
            {
                sum[i][j]+=sum[i-1][j]+sum[i][j-1]-sum[i-1][j-1];
                if(i-x+1>=1&&j-x+1>=1)
                    ans=max(ans,query(i,j,i-x+1,j-x+1));
            }
        }
    
        cout<<ans;
    
        return 0;
    }




  • 相关阅读:
    eclips搭建python开发环境
    win7下odoo服务启动又停止解决方法
    ubuntu14.04调节屏幕亮度
    在ubunut下使用pycharm和eclipse进行python远程调试
    读书笔记——乔布斯,做最好的自己,共创式教练
    压力测试工具——Galting
    番茄工作法和Bullet Journal笔记法
    Openstack Swift中间件编写
    《黑客》读书笔记
    用腻了bootstrap的可以试试semantic-ui
  • 原文地址:https://www.cnblogs.com/planche/p/8659546.html
Copyright © 2011-2022 走看看