花生采摘笔记:
题目:
有一个n*m矩阵的花生田,采摘规则如下:你先找出花生最多的植株,去采摘它的花生;然后再找出剩下的植株里花生最多的,去采摘它的花生;依此类推,不过你一定要在我限定的时间内回到路边。”当然不是每个方格内都有花生。
你每个单位时间内可做的事情:
1) 从路边跳到最靠近路边(即第一行)的某棵花生植株;
2) 从一棵植株跳到前后左右与之相邻的另一棵植株;
3) 采摘一棵植株下的花生;
4) 从最靠近路边(即第一行)的某棵花生植株跳回路边。
问你最多能摘到几棵?
诶嘛看到这个题目是不是一脸懵逼!(不存在的)
加黄的思路分析和思路整理非常重要!
那么分析后代码如下:
#include<bits/stdc++.h>
using namespace std;
long int t1,t2,i,j,n,m,x,y,k,maxx,sum,a[101][101],nx,ny;
void find_max(){
maxx=0;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
if (a[i][j]>maxx){
maxx=a[i][j];x=i;y=j;
}
}
int main(){
cin>>n>>m>>k;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
cin>>a[i][j];
find_max();
if (2*x+1<=k){
sum+=maxx;
a[x][y]=0;
k=k-x-1;
nx=x;ny=y;
}
while (k>0){
find_max();
if (maxx==0) break;
a[x][y]=0;
t1=abs(nx-x)+abs(ny-y)+1;
if (t1+x>k) break;
k=k-t1;
sum+=maxx;
nx=x;ny=y;
}
cout<<sum;
return 0;
}
相关知识
花生几月份成熟采摘
花生的成熟时间及采摘技巧(一年四季)
ZUST 程序设计算法竞赛基础【1】题解报告
洛谷 P1077 摆花 题解
园林绿化工中理论知识题解。.doc
花店橱窗题目题解
东北花生收获季节(花生的生长过程及收获时间)
NOIP2017初赛阅读程序写结果第4题题解
农业采摘
花生的成熟期及其养护方法(掌握花生成熟期)
网址: 【题解】花生采摘 https://m.huajiangbk.com/newsview1083184.html
上一篇: 秋花生采收的注意事项 |
下一篇: 安岳柠檬什么时候成熟 详解安岳柠 |