当前位置: 首页 > news >正文

【蓝桥杯冲冲冲】Invasion of the Milkweed G

【蓝桥杯冲冲冲】Invasion of the Milkweed G

蓝桥杯备赛 | 洛谷做题打卡day30

文章目录

  • 蓝桥杯备赛 | 洛谷做题打卡day30
  • [USACO09OCT] Invasion of the Milkweed G
    • 题目描述
    • 输入格式
    • 输出格式
    • 样例 #1
      • 样例输入 #1
      • 样例输出 #1
    • 题解代码
    • 我的一些话

在这里插入图片描述

输入格式

* Line 1: Four space-separated integers: X, Y, Mx, and My

* Lines 2…Y+1: Line y+1 describes row (Y+2-y) of the field with X characters (‘.’ for grass and ‘*’ for a boulder)

输出格式

* Line 1: A single integer that is the week number when the milkweed takes over the last remaining non-boulder square of the pasture.

样例 #1

样例输入 #1

4 3 1 1 
.... 
..*. 
.**.

样例输出 #1

4

题解代码

学会利用新知,自己多试试并尝试积攒一些固定解答方案,debug,以下是题解代码 ~

#include<bits/stdc++.h>
using namespace std;
int f[105][105],tot=1,n,m,sx,sy,Time=1,sum;
char Map[105][105];
int l[8][2]={{1,0},{0,1},{-1,0},{0,-1},{-1,-1},{1,-1},{-1,1},{1,1}};
int main()
{memset(f,-1,sizeof(f));cin>>m>>n>>sy>>sx;for(int i=n;i>0;i--)for(int j=1;j<=m;j++){cin>>Map[i][j];if(Map[i][j]=='.') sum++;}f[sx][sy]=0; while(tot!=sum){for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){bool flag=0;if(f[i][j]>0) continue;if(Map[i][j]=='*') continue;for(int q=0;q<8;q++){int tx=i+l[q][0];int ty=j+l[q][1];if(tx<1||tx>n||ty<1||ty>m) continue;if(Map[tx][ty]=='*') continue;if(f[tx][ty]!=Time-1) continue;f[i][j]=Time; flag=1;}if(flag) tot++;}Time++;}cout<<Time<<endl;return 0;
}

我的一些话

  • 今天学习动态规划,dp属于比较难的部分,这题利用记忆化搜索即可快速解决,需要多动脑,多思考思路还是很好掌握的,虽然一次性AC有一定难度,需要通盘的考虑和理解,以及扎实的数据结构基础才能独立写出AC代码。但无论难易,大家都要持续做题,保持题感喔!一起坚持(o´ω`o)

  • 如果有非计算机专业的uu自学的话,关于数据结构的网课推荐看b站上青岛大学王卓老师的课,讲的很细致,有不懂都可以私信我喔

  • 总结来说思路很重要,多想想,多在草稿纸上画画,用测试数据多调试,debug后成功编译并运行出正确结果真的会感到很幸福!

  • 关于之前蓝桥杯备赛的路线和基本方法、要掌握的知识,之前的博文我都有写,欢迎大家关注我,翻阅自取哦~

  • 不管什么都要坚持吧,三天打鱼两天晒网无法形成肌肉记忆和做题思维,该思考的时候一定不要懈怠,今天就说这么多啦,欢迎评论留言,一起成长:)

http://www.lryc.cn/news/297870.html

相关文章:

  • 【JAVA WEB】 百度热榜实现 新闻页面 Chrome 调试工具
  • Linux——动静态库
  • Vulnhub靶机:hacksudo-search
  • Leetcode 188 买卖股票的最佳时机 IV
  • win32编程系统BUG(Win32 API中的WM_SETTEXT消息)
  • Linux防火墙开放
  • 通过 docker-compose 部署 Flink
  • HarmonyOS ArkTS修改App的默认加载的界面(二十)
  • 【前端高频面试题--Vue基础篇】
  • Spring Boot 实现热插拔 AOP
  • 2月05日,每日信息差
  • 使用Python进行数据的描述性分析,用少量的描述性指标来概括大量的原始数据
  • 【JS逆向三】逆向某某网站的sign参数,并模拟生成仅供学习
  • 移动光猫gs3101超级密码及改桥接模式教程
  • leetcode 153
  • 【MySQL】数据库的基础——数据库的介绍、MySQL的介绍和架构、SQL分类、MySQL的基本使用、MySQL的存储引擎
  • 后端的技术设计文档
  • Windows10安装PCL1.14.0及点云配准
  • C语言第二十二弹---指针(六)
  • Qt Windows和Android使用MuPDF预览PDF文件
  • MongoDB聚合:$replaceWith
  • Vue 进阶系列丨实现简易VueRouter
  • unity editor 编辑器 GUID localID LocalFileId 查找问题
  • 【Mybatis】从0学习Mybatis(2)
  • ChatGPT高效提问—prompt常见用法(续篇九)
  • echarts的title标题属性
  • 【HTML+CSS】使用CSS中的Position与z-index轻松实现一个简单的自定义标题栏效果
  • 从零开始:用 Rust 编写你的第一个 Web 服务
  • 机器学习复习(8)——逻辑回归
  • 深入解析MySQL 8:事务数据字典的变革