题目:P2280 [HNOI2003]激光炸弹 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
题目大意
给出n,m分别表示有n个坐标,和每个目标的边长。x,y,v分别表示目标的坐标和价值。需要输出一颗炸弹需要炸掉多少的价值。
思路
将每个坐标进行输入,再将每个坐标进行++,最后再算出总的价值量
代码
#include<iostream>
#include<stdio.h>
#include<fstream>
#include<algorithm>
#include<cmath>
#include<deque>
#include<vector>
#include<queue>
#include<string>
#include<cstring>
#include<map>
#include<stack>
#include<set>
using namespace std;
int s[5010][5010];//开一个坐标数组,尽量开大一点,不然答案不能输出
int main()
{
int n,m;
scanf("%d%d",&n,&m);
while(n--)
{
int x,y,v;
scanf("%d%d%d",&x,&y,&v);
s[x+1][y+1]=v;//表示每个目标的价值位v,加1是考虑了(0,0)坐标
}
for(int i=2;i<=5005;i

这篇博客介绍了HNOI2003竞赛中的激光炸弹问题,阐述了题目要求计算在给定坐标下,如何通过激光炸弹最大化摧毁的目标价值。博主分享了他们的解题思路,即先输入所有坐标并累加,然后计算总价值。代码展示和问题总结表明在思维逻辑和问题解决方面还有提升空间。

441

被折叠的 条评论
为什么被折叠?



