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

聊城网站制作价格做名片的网站

聊城网站制作价格,做名片的网站,网站系统平台建设,站群搭建题目 P3131 分析&&代码 由于模完7之后的数字只有0~6&#xff0c;所以本题的哈希表可以用一个大小为7的数组优化。 原本我写的代码 #include<iostream>using namespace std;const int N 5e4 10;int n,a[N],f[N],mp[10];int main() {cin >> n;for(in…

题目

P3131
在这里插入图片描述

分析&&代码

由于模完7之后的数字只有0~6,所以本题的哈希表可以用一个大小为7的数组优化。

原本我写的代码

#include<iostream>using namespace std;const int N = 5e4 + 10;int n,a[N],f[N],mp[10];int main()
{cin >> n;for(int i=1;i<=n;i++) {cin >> a[i];f[i] = (f[i-1] + a[i]) % 7;if(mp[f[i] % 7] == 0) mp[f[i] % 7] = i; //头一次出现,记录下标 }//枚举结尾int ret = 0; for(int i=1;i<=n;i++){ret = max(ret,i-mp[f[i] % 7]);}cout << ret;
}

错误原因:
在这里插入图片描述
改正:

#include<iostream>
#include<cstring>using namespace std;const int N = 5e4 + 10;int n,a[N],f[N],mp[10];int main()
{cin >> n;memset(mp,-1,sizeof mp);mp[0] = 0;int ret = 0;for(int i=1;i<=n;i++) {cin >> a[i];f[i] = f[i-1] + a[i];if(mp[f[i] % 7] == -1) mp[f[i] % 7] = i; //头一次出现,记录下标 else ret = max(ret,i-mp[f[i] % 7]);}cout << ret;return 0;
}

优化掉前缀和数组,使用一个int变量sum来代替,因为只用记录一次数值即可,后面不会查。

#include <iostream>
#include <cstring>
using namespace std;const int N = 5e4 + 10;int n, a[N], sum, mp[10];int main() 
{cin >> n;memset(mp, -1, sizeof mp);mp[0] = 0;int ret = 0;for (int i = 1; i <= n; i++) {cin >> a[i];sum = (sum + a[i]) % 7;if(mp[sum] == -1) mp[sum] = i;else ret = max(ret,i-mp[sum]);}cout << ret;return 0;
}

使用哈希表的意义就是可以记录下某一个值对应的下标,这样就可以在遍历的过程中用O(1)的时间查找这个值,而不是在遍历的过程中需要查找的时候,还要再来一个for循环把前面的前缀和再遍历一遍看看有没有对应的值。

http://www.dtcms.com/a/565905.html

相关文章:

  • 辽宁网站建设招标网站如何做百度推广方案
  • ECharts 实战:`connectNulls` 的妙用——绘制连续折线图并跳过 0 值节点
  • Mysql引擎
  • 报表类系统后端API设计思路
  • 谷歌的技术栈是什么?
  • Token 存储与安全防护
  • HAProxy 简介及配置
  • 电商系统网站建设网站客户端制作教程
  • 只会后端不会前端如何做网站免费wordpress页面编辑器
  • BIRGMA验厂要求
  • 铝电解电容器用阳极箔:市场格局、技术演进与未来趋势
  • linux服务-vsftpd搭建
  • SAP PP生产报废单功能分享
  • 汇川H5U+HMI仿真运行追飞剪程序
  • 服装设计网站免费临桂住房和城乡建设局网站
  • 原子性与原子操作
  • Java使用okhttp发送get、post请求
  • 两种上传图片的方式——91张先生
  • web3品牌RWA资产自主发行设计方案
  • 网站公司是做什么的长沙做网站备案
  • 【k8s】Kubernetes 资源限制设置规范手册 MB与MiB的概念混淆问题
  • 网站开发需要多长时间互联网有限公司
  • 撰写网站规划书网络服务示范区创建情况
  • 汇川高压变频故障码解析F134 F149 F150 F151 F154 F155 F157 F159 F160
  • 从 C 到 C++20 协程编写方法的演变。第一部分:函数 + 宏 = 协程
  • 采购管理软件选型避坑指南
  • 广州网站搭建多少钱网站的pv uv
  • ubuntu上安装交叉编译工具链说明
  • 【博资考5】网安2025
  • 怎样在别人网站做加强链接宁波网站推广专业服务