二话不说先上 传送门 让你们康康这条 题目有多么的简单
意思很简单,就是问你,给你一个矩阵,用d<<1大小的正方形覆盖他,最多能盖多大的权值和方案数(逃
(本人一看好简单)一顿操作如猛虎,加上前缀和优化,数据范围还小
然后 ,然后就20分
哭了
后来才知道,正方形可以扩到矩阵外面emm
放出我的第一次代码~~~去吧皮卡丘
1 //wireless 2 #include<iostream> 3 #include<fstream> 4 using namespace std; 5 int mp[150][150],sum[150][150]; 6 int d,n,mx,ans; 7 int main(){ 8 // freopen("wireless.in","r",stdin); 9 // freopen("wireless.out","w",stdout); 10 cin>>d>>n; 11 for(int i=1,x,y,z;i<=n;i++){ 12 cin>>x>>y>>z; 13 mp[x][y]=z; 14 } 15 int k,l,now; 16 for(int i=2*d;i<=128;i++){ 17 k=i-2*d; 18 for(int j=2*d;j<=128;j++){ 19 l=j-2*d; 20 now=0; 21 for(int p=k;p<=i;p++){ 22 for(int q=l;q<=j;q++){ 23 now+=mp[p][q]; 24 } 25 } 26 if(now>mx){ 27 mx=now; 28 ans=1; 29 } 30 else if(now==mx)ans++; 31 } 32 } 33 cout<<ans<<" "<<mx<<endl; 34 return 0; 35 }
不知道为啥在洛谷上还能有70分,大概洛谷数据太水了(小声BB),我还前缀和优化了讷,夸我夸我
后来暴躁的我写了四重循环
希望以后不要在这么错了
还有两天,希望各位这次CSP
while(1)
RP++;