贪心算法2(c++)
最大子矩阵
描述
已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1*1)子矩阵。
比如,如下4*4的矩阵
0- 2 -7 0
9 2 -6 2
-4 1 -4 1
-1 8 0-2
的最大子矩阵是
9 2
-4 1
-18
这个子矩阵的大小是15。
输入输入是一个N*N的矩阵。输入的第一行给出N(0<N<=100)。再后面的若干行中,依次(首先从左到右给出第一行的N个整数,再从左到右给出第二行的N个整数…)给出矩阵中的N2个整数,整数之间由空白字符分隔(空格或者空行)。已知矩阵中整数的范围都在[-127,127]。
输出
输出最大子矩阵的大小。
样例输入
4
0 -2 -7 0
9 2 -6 2
-4 1 -4 1
-1 8 0 -2
样例输出
15
#include <iostream>
using namespace std;
int main()
{int n;cin>>n;int a[110][110] = {0};int b[110][110] = {0};for(int i = 1;i<=n;i++){for(int j = 1;j<=n;j++){cin>>a[i][j];if(i==1){b[i][j] = b[i][j-1]+a[i][j];}else{b[i][j] = b[i-1][j]+a[i][j]+b[i][j-1]-b[i-1][j-1];}}}int cnt = 0;int ma = -99999;for(int i1 = 1;i1<=n-1;i1++){for(int j1 = 1;j1<=n-1;j1++){for(int i2 = i1+1;i2<=n;i2++){for(int j2 = j1+1;j2<=n;j2++){if(i1==1&&j1==1){cnt = b[i2][j2];}else if(i1!=1&&j1==1){cnt = b[i2][j2]-b[i1-1][j2];}else if(i1==1&&j1!=1){cnt = b[i2][j2]-b[i2][j1-1];}else if(i1!=1&&j1!=1){cnt = b[i2][j2]-b[i2][j1-1]-b[i2][j1-1]+b[i1-1][j1-1];}ma = max(cnt,ma);}}}}cout<<ma;return 0;
}
均分纸牌
题目描述
有n堆纸牌(2<n≤200),排成一行,编号分别为1,2....n。已知每堆纸牌有一定的张数,且张数之和均为n的倍数。移动各堆中的任意张纸牌,使每堆的数量达到相同,且移动次数最少。
移动规则:每次可以移动任意的张数,第1堆可以移向第2堆第2堆可以移向第1堆或第3堆,。第n堆只可以移向第n-1堆。
例如,当n=4时:
堆号1 2 3 4
张数3 5 4 8
移动的方法有许多种,其中的一种方案:
① 第2堆向第1堆移动2张,成为:5 3 4 8
②第4堆向第3堆移动3张,成为:5 3 7 5
③第3堆向第2堆移动2张,成为:5 5 5 5
经过三次移动,每堆都成为5张。
输入
第一行一个整数n。
第二行n个整数,用空格分隔。
输出
1个整数(表示最少移动次数)
样例
输入复制
4
3 5 4 8
输出复制
2
#include <iostream>
using namespace std;
int main()
{int n;cin>>n;int a[210] = {0};int sum = 0;for(int i = 0;i<n;i++){cin>>a[i];sum = sum+a[i];}sum = sum/n;int cnt = 0;for(int i = 0;i<n;i++){if(a[i]<sum){a[i+1] = a[i+1]-(sum-a[i]);a[i] = sum;cnt++;}else if(a[i]>sum){a[i+1] = a[i+1]+a[i]-sum;a[i] = sum;cnt++;}}cout<<cnt;return 0;
}
相关文章:
贪心算法2(c++)
最大子矩阵 描述 已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1*1)子矩阵。 比如,如下4*4的矩阵 0- 2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0-2 的最大子矩阵是 9 2 -4 1 -18 这个子矩阵的大小是15。 输入…...
Bugku Crypto 部分题目简单题解(四)
目录 python_jail 简单的rsa 托马斯.杰斐逊 这不是md5 进制转换 affine Crack it rsa python_jail 启动场景 使用虚拟机nc进行连接 输入print(flag) 发现报错,经过测试只能传入10个字符多了就会报错 利用python中help()函数,借报错信息带出flag变…...
软考备考三
操作系统 操作系统概述 功能:组织和管理软件,硬件资源以及计算机系统中的工作流程,控制程序的执行,向用户提供接口。 分类: 1.批处理操作系统 单道批 多道批(宏观上并行,微观上串行)…...
Fortran: select type
Fortran: select type 实现类似C的template函数功能 module M_reduceuse mpi_f08interface reducemodule procedure reduce_scalar,reduce_arrayend interface reducecontains!!https://docs.open-mpi.org/en/v5.0.x/man-openmpi/man3/MPI_Reduce.3.htmlsubroutine reduce_ar…...
QEMU启动Linux内核
在QEMU环境下启动linux内核命令如下: QEMU_AUDIO_DRVnone qemu-system-arm -m 256M -nographic -M versatilepb -kernel /home/yukeyang/myfile/linux-6.6.30/arch/arm/boot/zImage -append "consolettyAMA0 rdinit/bin/sh" -dtb arch/arm/boot/dts/arm/…...
Golang | Leetcode Golang题解之第109题有序链表转换二叉搜索树
题目: 题解: var globalHead *ListNodefunc sortedListToBST(head *ListNode) *TreeNode {globalHead headlength : getLength(head)return buildTree(0, length - 1) }func getLength(head *ListNode) int {ret : 0for ; head ! nil; head head.Next…...
Qt快速入门到熟练(电子相册项目(一))
经过一段时间的学习,相信大家对QT的基本用法都有所了解,从这篇文章开始,我准备记录一下电子相册的项目的一个学习过程。 实现项目创建功能 对于这个电子相册的项目,我并没有在一开始就把所有可能用到的功能模块去事无巨细的考虑周…...
机械臂与Realsense D435 相机的手眼标定ROS包
本教程主要介绍机械臂与 Realsense D435 相机手眼标定的配置及方法。 系统:Ubuntu 20.0.4 ◼ ROS:Noetic ◼ OpenCV 库:OpenCV 4.2.0 ◼ Realsense D435:librealsense sdk(2.50.0)、realsense-ros 功能包&…...
ubuntu使用记录——如何使用wireshark网络抓包工具进行检测速腾激光雷达的ip和端口号
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言wireshark网络抓包工具1.wireshark的安装2.wireshark的使用3.更改雷达ip 总结 前言 Wireshark是一款备受赞誉的开源网络协议分析软件,其功能之强大…...
C#学习指南:重要内容与实用技巧
学习C#编程是一段充满挑战但又非常充实的旅程。以下是我在学习过程中积累的一些经验,希望能对大家有所帮助。 一、掌握基础概念 类及其成员 C#中的类是编程的基础模块。理解类的结构、属性、方法和构造函数是至关重要的。每个类都有其特定的功能,学会如…...
display(a,b)什么意思
在Python中,如果你看到display(a,b)这样的代码,它通常意味着有人正在使用IPython.display模块中的display函数来同时显示两个对象。 IPython.display是Jupyter Notebook和JupyterLab等交互式计算环境的一部分,它提供了一种在笔记本中显示各种…...
SpringBoot3整合阿里云短信服务-1(配置阿里云短信服务)
SpringBoot3整合阿里云短信服务-1(配置阿里云短信服务) 一、开通阿里云短信服务 阿里云官网:阿里云官网 选择产品中企业服务与云通信中的短信服务 选择免费开通 选择快速学习和测试 根据这几个全部配置一下我这里是配置好了所以学习进度是100% 1.1 添加资质 首先选择新增资质 …...
基于HAL库控制LED流水灯
一. 了解并掌握HAL库函数开发方法。安装 stm32CubeMX,配合Keil,使用HAL库方式完成下列任务: 1、重做上一个LED流水灯作业,用GPIO端口完成2只LED灯的周期闪烁。 2、接上,再用GPIO端某一管脚接一个开关(用杜邦…...
利用kubeadm安装k8s集群 以及跟harbor私有仓库下载镜像
目录 环境准备 master(2C/4G) 192.168.88.3 docker、kubeadm、kubelet、kubectl、flannel node01(2C/2G) 192.168.88.4 docker、kubeadm、kubelet、kubectl、flannel node02(…...
明天(周六)下午!武汉Linux爱好者线下沙龙,我们在华中科技大学等你!
2024 年 5月 25 日(周六)下午,我们将在「武汉市洪山区」 珞喻路 1037 号华中科技大学南五楼 613 室举办武汉 Linux 爱好者线下沙龙(WHLUG),欢迎广大 Linux 爱好者来到现场,与我们一同交流技术&a…...
MySQL主从复制(五):读写分离
一主多从架构主要应用场景:读写分离。读写分离的主要目标是分摊主库的压力。 读写分离架构 读写分离架构一 架构一结构图: 这种结构模式下,一般会把数据库的连接信息放在客户端的连接层,由客户端主动做负载均衡。也就是说由客户…...
阿里巴巴 EasyExcel 真正的高效与通用导入(亿级数据秒级导入)
需要lombok、hutool、alibaba EasyExcel 相关依赖包 基于Lamba表达式的通用监听器 import cn.hutool.core.util.StrUtil; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import lombok.experimental.UtilityClass…...
32.5k star!!替换 postman?【送源码】
在软件开发过程中,API(应用程序接口)扮演着至关重要的角色。为了确保 API 的可靠性和性能,开发人员需要一种高效的方式来测试和调试它们。这方面的工具,大家经常用到的应该就是 postman 了。不过,今天了不起…...
课时135:awk实践_逻辑控制_综合实践
1.3.8 综合实践 学习目标 这一节,我们从 网络实践、文件实践、小结 三个方面来学习 网络实践 简介 所谓的网络实践,主要是借助于awk的数组功能,进行站点的信息统计操作。准备网络环境 安装软件 yum install nignx -y重启nginx [rootloca…...
c++ 读取MNIST数据集实现softmax回归
pytorch教材 3.4. softmax回归 — 动手学深度学习 2.0.0 documentation c实现代码 代码太长了就没整理了,也暂时没有运行效果截图 同样没有本文也没有实现反向自动求导 超长代码警告,757行。不过可能注释占一半 #include <bits/stdc.h> usin…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
rknn toolkit2搭建和推理
安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 ,不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源(最常用) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...
软件工程 期末复习
瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...
机器学习的数学基础:线性模型
线性模型 线性模型的基本形式为: f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法,得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...
