#翻转牛群

题目描述

农夫约翰偶尔会遇到无聊的青少年,他们晚上去他的农场,把奶牛们弄翻。一天早上,他醒来发现事情又发生了——他的 N∗N 头奶牛排列成了一个完美的 N∗N 方阵(1≤N≤10),但他发现其中一些现在已经被弄翻了,而奶牛们比较笨重,没法自己站起来。

幸运的是,农夫约翰用他的拖拉机和叉车上的零件制造了一台出色的机器---“奶牛救星3000”,它可以一次让一大群奶牛站起来,帮助他尽快让所有奶牛重新站起来。他可以将机器应用于他的奶牛方阵中的任何“左上矩形”——一个包含左上角位置奶牛的矩形子矩阵。当他这样做的时候,机器会翻转这个矩形中的每一头牛,让翻倒的奶牛站起来,但不幸的是,也会把原来站起来的奶牛翻倒!换句话说,机器“切换”矩形中每头牛的状态。

农民约翰认为,通过将他的机器多次应用于适当的矩形集合,他最终可以将所有奶牛恢复到它们站起来的状态。请帮助他确定完成此操作所需的机器应用程序的最小次数。

输入格式

输入第一行包含一个正整数N。 接下来N行,每行有N个0或者1,表示每行奶牛的状态,0表示站着的奶牛,1表示倒下的奶牛。

输出格式

输出一行一个整数,表示使用机器让所有奶牛站起来的最小次数。

样例输入
3
001
111
111
样例输出
2
提示

第一次可以对所有奶牛翻转,变成

110

000

000

第二次对第一行的前两个奶牛翻转,变成

000

000

000

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/659078.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习使用Flask模拟接口进行测试

前言 学习使用一个新工具,首先找一段代码学习一下,基本掌握用法,然后再考虑每一部分是做什么的 Flask的初始化 app Flask(__name__):初始化,创建一个该类的实例,第一个参数是应用模块或者包的名称 app…

免费使用支持离线部署使用的 txt2video 文本生成视频大模型(Text-to-Video-Synthesis Model)

免费使用支持离线部署使用的 txt2video 文本生成视频大模型(Text-to-Video-Synthesis Model)。 文本生成视频大模型(Text-to-Video-Synthesis Model)是一种基于深度学习技术的人工智能模型,它可以将自然语言文本描述转换为相应的视频。即通过输入文本描述&#xff…

远程连接服务器:Ping通但SSH连接失败的解决办法

写在前面:本博客仅作记录学习之用,部分图片来自网络,如需引用请注明出处,同时如有侵犯您的权益,请联系删除! 文章目录 前言常见问题影响SSH的因素本地影响因素防火墙设置网络配置文件 远程主机影响因素放行…

Python爬虫实践指南:利用cpr库爬取技巧

引言 在信息时代,数据是无价之宝。为了获取网络上的丰富数据,网络爬虫成为了不可或缺的工具。在Python这个强大的编程语言中,cpr库崭露头角,为网络爬虫提供了便捷而高效的解决方案。本文将深入探讨如何利用cpr库实现数据爬取的各…

西瓜书读书笔记整理(十二) —— 第十二章 计算学习理论(下)

第十二章 计算学习理论(下) 12.4 VC 维(Vapnik-Chervonenkis dimension)12.4.1 什么是 VC 维12.4.2 增长函数(growth function)、对分(dichotomy)和打散(shattering&…

扩展学习|商业智能和大数据分析的研究前景(比对分析)

文献来源: Liang T P , Liu Y H .Research Landscape of Business Intelligence and Big Data analytics: A bibliometrics study[J].Expert Systems with Applications, 2018, 111(NOV.):2-10.DOI:10.1016/j.eswa.2018.05.018. 信息和通信技术的快速发展导致了数字…

RocksDB是如何实现存算分离的

核心参考文献: Dong, S., P, S. S., Pan, S., Ananthabhotla, A., Ekambaram, D., Sharma, A., Dayal, S., Parikh, N. V., Jin, Y., Kim, A., Patil, S., Zhuang, J., Dunster, S., Mahajan, A., Chelluri, A., Datye, C., Santana, L. V., Garg, N., & Gawde,…

乐鑫与 Elektor 杂志合作推出特刊,聚焦 AIoT 创新

在新一年的起始之际,我们很荣幸地与 Elektor 合作推出由乐鑫领衔编辑的杂志特刊。欢迎点此阅读电子版本。 Elektor 杂志作为国际电子工程和科技创新的重要平台,自 20 世纪 60 年代起,就引领着电子制造的发展潮流。如今,它已经发展…

【Docker】了解Docker Desktop桌面应用程序,TA是如何管理和运行Docker容器(1)

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《Docker容器》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对…

Leetcode—2396. 严格回文的数字【中等】

2024每日刷题(一零六) Leetcode—2396. 严格回文的数字 算法思想 实现代码 class Solution { public:bool isStrictlyPalindromic(int n) {return false;} };运行结果 之后我会持续更新,如果喜欢我的文章,请记得一键三连哦&…

【linux】文本处理命令-grep、awk、sed使用(1)

作用: grep数据查找定位awk数据切片sed数据修改 类比SQL: grepselect *from tableawkselect field from tablesedupdate table set fieldnew where fieldold 一、grep 1.1 grep* Unix的grep家族包括grep、egrep和fgrep。egrep和fgrep的命令只跟g…

基于simulink的模糊PID控制器建模与仿真,并对比PID控制器

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1PID控制器原理 4.2 模糊PID控制器原理 5.完整工程文件 1.课题概述 在simulink,分别建模实现一个模糊PID控制器和一个PID控制器,然后将PID控制器的控制输出和模糊PID的控制输出…

【vue2】路由之 Vue Router

文章目录 一、安装二、基础使用1、简单的示例2、动态路由2.1 定义动态路径参数2.2 获取动态路径的参数2.3 捕获所有路由 3、嵌套路由4、编程式的导航4.1 router.push4.2 router.replace4.3 router.go(n) 5、命名路由6、重定向 三、进阶1、导航守卫1.1 全局前置守卫1.2 全局后置…

模板笔记 ST表 区间选数k

本题链接:用户登录 题目: 样例: 输入 5 3 1 1 2 2 3 1 2 3 3 1 5 输出 4 6 思路: . 根据题意,给出数组,以及多个区间,问这些区间中,最小值之和 和 最大值之和,…

A ConvNet for the 2020s

前言 论文名称:A ConvNet for the 2020s  发表时间:CVPR2022  code链接: 代码  作者及组织: Zhuang Liu,Hanzi Mao来自Meta和UC Berkeley。 一句话总结:仿照swin-T思想,重新设计ResNet结构&a…

spark-cannot resolve overloaded method

使用split方法,出现错误:cannot resolve overloaded method 解决方法:那个regex应该是自动生成,所以split括号中输入空引号即可。 入门学习人的愚笨,也要继续坚持,加油!

解决npm安装phantomjs失败

失败信息 Progress: resolved 102, reused 102, downloaded 0, added 0, done .pnpm/phantomjs2.1.7/node_modules/phantomjs: Running install script, failed in 21.3s .../node_modules/phantomjs install$ node install.js │ PhantomJS not found on PATH │ Downloading…

消息中间件之RocketMQ源码分析(三)

RocketMQ中的Consumer启动流程 RocketMQ客户端中有两个独立的消费者实现类分别为DefaultMQPullConsumer和DefaultMQPushConsumer, DefaultMQPullConsumer DefaultMQPullConsumer,该消费者使用时需要用户主动从Broker中Pull消息和消费消息,提交消费位点…

vue-router 实现页面路由

vue-router介绍 vue 的官方路由组件 功能包括 嵌套路由映射动态路由选择模块化、基于组件的路由配置路由参数、查询、通配符HTML5 的 history 模式 和 hash 模式 vue-router使用 结合 tabs 组件,实现页面路由 安装 vant-ui 实现底部导航栏 Tabbar-CSDN博客 重点…

图的学习

图的基本概念和术语 图的定义:图是由顶点的有穷非空集合和顶点之间的边的集合组成的,G表示,V是图G中顶点的集合,E是图G中边的集合 无向图:任意两点的边都是无向边组成的图(无向边:&#xff08…