zoukankan      html  css  js  c++  java
  • BZOJ 1218: [HNOI2003]激光炸弹( 前缀和 + 枚举 )

    虽然source写着dp , 而且很明显dp可以搞...但是数据不大 , 前缀和 + 枚举也水的过去.....

    -------------------------------------------------------------------------------------------------------

    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #include<iostream>
     
    #define rep( i , n ) for( int i = 0 ; i < n ; ++i )
    #define Rep( i , n ) for( int i = 1 ; i < n ; ++i )
    #define clr( x , c ) memset( x , c , sizeof( x ) )
     
    using namespace std;
     
    const int N = 5002;
     
    int sum[ N ][ N ];
     
    int main() {
    freopen( "test.in" , "r" , stdin );
    int n , r;
    cin >> n >> r;
    clr( sum , 0 );
    while( n-- ) {
    int x , y , v;
    scanf( "%d%d%d" , &x , &y , &v );
    sum[ x + 1 ][ y + 1 ] = v;
    }
    Rep( i , N ) 
       Rep( j , N )
           sum[ i ][ j ] += sum[ i - 1 ][ j ] + sum[ i ][ j - 1 ] - sum[ i - 1 ][ j - 1 ];
    int ans = 0;
    for( int i = 0 ; i + r < N ; i++ )
       for( int j = 0 ; j + r < N ; j++ )
           ans = max( ans , sum[ i + r ][ j + r ] - sum[ i + r ][ j ] - sum[ i ][ j + r ] + sum[ i ][ j ] );
           
    cout << ans << " ";
    return 0;
    }

      

    ------------------------------------------------------------------------------------------------------- 

    1218: [HNOI2003]激光炸弹

    Time Limit: 10 Sec  Memory Limit: 162 MB
    Submit: 1297  Solved: 624
    [Submit][Status][Discuss]

    Description

    一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标。现在地图上有n(N<=10000)个目标,用整数Xi,Yi(其值在[0,5000])表示目标在地图上的位置,每个目标都有一个价值。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆破范围,即那个边长为R的正方形的边必须和x,y轴平行。若目标位于爆破正方形的边上,该目标将不会被摧毁。 0

    Input

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

    Output

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

    Sample Input

    2 1
    0 0 1
    1 1 1

    Sample Output

    1

    HINT

    Source

  • 相关阅读:
    初探nodejs事件循环机制event loop
    夯实基础之--new关键字、instanceOf原理
    分享-结合demo讲解JS引擎工作原理
    Linux-centos安装node、nginx小记
    openlayers5实战--踩坑总结
    node+koa中转层开发实践总结
    vue预渲染实践总结
    css多行省略-webkit-box-orient打包编译后失效原因
    使用mpVue开发小程序实战总结
    Linux crontab定时执行任务
  • 原文地址:https://www.cnblogs.com/JSZX11556/p/4541238.html
Copyright © 2011-2022 走看看