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

数组

关于二维vector:
vector<vector> a(n,vector(n) );//n行n列(n为输入变量)
vector<vector> a(n,vector() );//n行,不指定列数
但是数组不支持变长:
const int N=n; int a[N][N];//错误
const int N=100;int a[N][N];//可以

1.长度最小的子数组
找出该数组中满足其总和大于等于 target 的长度最小的子数组(连续)
思路:双指针

点击查看代码
class Solution {
public:int minSubArrayLen(int target, vector<int>& nums) {int n=nums.size();int l=0,r=0;int sum=0,minn=n+1;while(1){while(r<n&&sum<target){sum+=nums[r];r++;}if(sum>=target)minn=min(minn,r-l);if(r>=n&&sum<target)break;sum-=nums[l];l++;}if(minn<n+1)return minn;return 0;}
};

2.螺旋矩阵
本题是n* n,n*m类似

点击查看代码
class Solution {
public:vector<vector<int>> generateMatrix(int n) {int l=0,r=n-1,u=0,d=n-1;int id=1,te;vector<vector<int>> a(n,vector<int>(n) );//n行n列while(id<=n*n){te=l;while(l<=r&&te<=r)a[u][te++]=id++;u++;te=u;while(r>=l&&te<=d)a[te++][r]=id++;r--;te=r;while(d>=u&&te>=l)a[d][te--]=id++;d--;te=d;while(l<=r&&te>=u)a[te--][l]=id++;l++;}return a;}
};

3.开发商购买土地
描述:
n * m个连续的区块,每个区块都拥有不同的权值,代表着其土地价值。
现在,需要将这个城市区域的所有区块分配给 A 公司和 B 公司。
只允许将区域按横向或纵向划分成两个子区域,而且每个子区域都必须包含一个或多个区块。 为了确保公平竞争,你需要找到一种分配方式,使得 A 公司和 B 公司各自的子区域内的土地总价值之差最小。
思路:前缀和(前缀和一般下标从1开始,方便操作

点击查看代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N=1e6+10;void solve()
{int n,m;cin>>n>>m;vector<vector<int>>a(n+1,vector<int>(m+1));vector<int>r(n+1),c(m+1);for(int i=1;i<=n;i++){int sum=0;for(int j=1;j<=m;j++){cin>>a[i][j];sum+=a[i][j];r[i]=r[i-1]+sum;}}for(int i=1;i<=m;i++){int sum=0;for(int j=1;j<=n;j++){sum+=a[j][i];c[i]=c[i-1]+sum;}}int d=1e9;for(int i=1;i<n;i++){d=min(d,abs(r[n]-r[i]-r[i]));}for(int i=1;i<m;i++){d=min(d,abs(c[m]-c[i]-c[i]));}cout<<d<<'\n';
}
int main()
{ll T=1;// cin>>T;while(T--)solve();return 0;
}
http://www.jsqmd.com/news/178468/

相关文章:

  • 【信号完整性】:信号与连接
  • 亲测降至5%以下!10款亲测有效的降AI率工具推荐(2026最新有效版)
  • MATH Day 01 - 群的定义及四条公理
  • MATH Day 01 - 群的定义及四条公理
  • 一站式展厅设计装修公司推荐:专业服务与口碑之选 - 品牌排行榜
  • 题解:P12097 [NERC2024] Fix Flooded Floor
  • 3个免费方法!10款亲测有效的降AI率工具推荐(2025最新降AI味指南)
  • 2026.1.1总结
  • Rust 结合 Tesseract OCR 进行验证码识别
  • Rust 结合 Tesseract OCR 进行验证码识别
  • 深度学习计算机毕设之基于VGG的图像风格迁移算法实现及系统应用实现
  • DL之Transformer之mHC:《mHC: Manifold-Constrained Hyper-Connections》翻译与解读
  • 2026最新盘点:最火的10款降ai率工具汇总,不花一分钱真的靠谱吗?(附踩坑指南)
  • 用 Swift 结合 Tesseract 进行验证码识别
  • 计算机深度学习毕设实战-基于VGG的图像风格迁移算法实现及系统应用实现
  • 网速管家电脑版
  • 免费开源Http、Https抓包工具
  • 深度学习毕设选题推荐:基于VGG的图像风格迁移算法实现及系统应用实现
  • 基于Springboot工作量统计管理系统【附源码+文档】
  • 【计算机毕业设计案例】基于机器学习的人脸发型推荐算法研究与应用实现
  • django基于 Python 的高校大学生职业就业推荐系统的设计与实现-vue
  • 【计算机毕业设计案例】基于VGG的图像风格迁移算法实现及系统应用实现
  • Webmozart Assert:PHP类型安全的强力守卫
  • 跨设备粘贴板管理工具 CrossPaste
  • java基于SpringBoot的中华诗词文化交流平台的设计与实现-vue
  • 深度学习毕设项目推荐-基于机器学习的人脸发型推荐算法研究与应用实现
  • 深度学习毕设项目:基于VGG的图像风格迁移算法实现及系统应用实现
  • java基于SpringBoot的乐器商城商品推荐系统设计与实现-vue
  • C/C++ 中的 __asm volatile 函数
  • 深度学习毕设项目推荐-基于VGG的图像风格迁移算法实现及系统应用实现