zoj1569

ZOJ题目分类 ZOJ题目分类 初学者题: 1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331 1334 1337 1338 1350 1365 1382 1383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755 1760 1763 1796 1813 1879 1889 1904 1915 1949 2001 2022 2099 2104 2108 21 阅读详情
其实计算机专业拼到最后拼的是数学,就像这道题。

这道题目如果就用普通的方法来做的话,复杂度会达到o(n^2),显然会超时,现在的目的是改进算法,使时间复杂度将到o(n),注意题目中有个很重要的条件:就是求和的数是相邻的,第一反应就是考虑求1----k项的和,然后对m取余,如果第i项的余数和第j项的余数相等,则从i到j的和就能被m整除,当然别忘了考虑0这个特殊的数。

根据组合公式,显然count +=  C(余数为i的项数,2)(其中i从0到m)+(余数为零的个数)

#include<stdio.h>
#include<string.h>

int n,m;
int countof[5000];
int array[10000];

int input()
{
  if(scanf("%d%d",&n,&m)==EOF)
    return 0;
  int i;
  for(i=0;i<n;i++)
  {
    scanf("%d",&array[i]);
  }
  memset(countof,0,sizeof(countof));
  return 1;
}

int cal()
{
  int i;
  int record=0;
  for(i=0;i<n;i++)
  {
    if(i==0)
      array[i]=array[i]%m;
    else
      array[i]=(array[i-1]+array[i])%m;
    if(array[i]==0)
      record++;
  }
  for(i=0;i<n;i++)
  {
    countof[array[i]]++;
  }
  int ret=0;
  for(i=0;i<m;i++)
  {
    if(countof[i]>=2)
    {
      ret+=countof[i]*(countof[i]-1)/2;
    }
  }
  ret+=record;
  return ret;
}

int main()
{
  while(input())
  {
    printf("%d\n",cal());
  }
  return 0;
}

ZOJ题目分类,适合各种难度等级训练 #include           using namespace std;          int main()         {              cout             cout             return 0;         }         正能量。小笨鸟,早起飞。 附:(来自网络) ZOJ题目分类 初学者题: 100 阅读详情

相关推荐

山东大学软件工程应用与实践——GMSSL开源库(六)——SM9密钥交换协议

2021SC@SDUSC 文章目录基本概念符号及辅助算法SM9密钥交换协议 基本概念 1976年,Diffie和Hellman在其题为《密码学的新方向》的论文中首次给出了公钥密码学的定义,并提出了Diffie-Hellman密钥交换算法。该算法解决了对称密码体制中的密钥分发问题,使得通信双方可以通过公开信道安全地交换共享密钥。 使用SM9通信的双方通过对方的标识和自身的私钥,经过两次或者可选的三次信息传递过程,计算获取一个由双方共同决定的共享秘密密钥。该密钥可以作为对称密码算法的会话密钥,其中可选步骤用来实

m0_51588039的博客 1988

ZOJ 1569 对于给定序列,问有多少子序列的和是m倍数

<br />题目连接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=569<br /> <br />题目的意思很明了,就不翻译了。。哥也是没有过四级的人啊。。。<br /> <br />这道题的数据量是10000,所以直接预处理+暴力的话是O(n^2)的,肯定会超时<br /> <br />所以程序还有待于优化。<br /> <br />注意到,题目只需要我们求出有多少个序列的和是m的倍数,而不需要知道具体这些序列是什么。<br /> 

bingshen的专栏 2415

Python多进程实战:用BaoStock高效下载股票历史数据的5个优化技巧

本文详细介绍了使用Python多进程技术通过BaoStock高效下载股票历史数据的5个优化技巧。从理解BaoStock的数据获取机制到进程池配置、智能任务分片、异常处理及性能监控,帮助开发者显著提升数据下载效率,特别适合量化交易领域的数据采集需求。

weixin_30369041的博客 458

ZOJ-1569

有了题解之后code就很简单。。不该啊。。没有自己思考过程了,附上大神题解

xhldtc的专栏 669

Matlab蒙特卡洛模拟二维伊辛模型相变过程

一、什么是伊辛模型 伊辛(Ising)模型是描述磁系统相变最简单的模型,但模型里自旋之间的相互作用赋予了它奇妙的特性,最有趣的就是对称性破缺。这一模型可以被推广用于研究连续的量子相变、基本粒子超弦理论、动力学临界行为等,甚至被认为可以描述深林火灾、交通拥堵、舆论传播等社会经济现象。 如图,每个格点的方向只有向上或向下两者状态,但临近的自旋之间有相互作用,而且点阵可以是一维、二维、三维、甚至更高维...

http://www.icfgblog.com/ 2万+

【软件系统架构】系列五:TCP/IP 协议栈

TCP/IP协议栈是现代网络通信的核心框架,采用分层架构设计,包含应用层、传输层、网络层和网络接口层四层结构。应用层提供HTTP、FTP等用户服务接口;传输层通过TCP/UDP实现端到端通信;网络层负责IP寻址和路由选择;网络接口层处理物理数据传输。数据在传输过程中经历层层封装,从应用层报文最终转换为物理层的比特流。该协议栈通过三次握手建立连接、数据传输、四次挥手断开连接的流程,确保可靠通信。作为互联网的基础,TCP/IP协议栈具有跨平台、标准化和可扩展的特点,广泛应用于各类网络设备和嵌入式系统中。

moton2017的博客 2163

【ZOJ - 1569】【Partial Sums】

题目: Given a series of n numbers a1, a2, ..., an, the partial sum of the numbers is defined as the sum of ai, ai+1, ..., aj. You are supposed to calculate how many partial sums of a given series of nu...

哇哈哈哈的博客 346

SOC、SOH、OCV

1)放电实验法的测量SOH结果最为准确,但是深度放电会对影响电池的寿命;2)电阻折算法仅将电阻作为评价SOH的依据,但电池老化时电阻的变化范围较小,因此该方法的误差较大;3)电阻折算法需要对电池进行大量的实验,绘制成Map图,但是该方法有一定的局限性,针对不同的电池需要绘制不同的Map图;4)阻抗分析法是目前最为前沿的方法,可以根据阻抗谱较为直观的分析SOH的变化,但是该方法需要的成本较高,每台设备约为5万美元。

m0_61973119的博客 2万+

zoj1569 Partial Sums

sum[i...j] = a[i]+a[i+1]+...+a[j] = sum[1...j]-sum[1...i-1],1 =分两种情况:1、i=1时,sum[1...j]%m==0,cnt++;2、i>1时,sum[i...j]%m==0 (sum[1...j]-sum[1...i-1])%m==0 sum[1...j]%m==sum[1...i-1]%m (令= k != 0)

fairylan的专栏 1113

uniapp - 详细实现移动端公众号 H5 网页授权登录流程及示例代码,申请测试公众号全流程及本地调试无需部署上线服务器就能直接调起微信登陆授权页面,手机移动端h5公众号页面利用微登录拿到用户数据!

uni-app,微信公众号,h5网页,uniapp网页端,手机端H5公众号页面,微信网页登陆,uniApp详细实现公众号的登录,微信授权第三方网站登录,流程及逻辑详细教程,OAuth2.0,公众号网页授权,微信网页授权通过code换取网页授权,redirect_url,参数错误,解决,报错,无法调起,如何申请测试公众号,微信公众平台测试号的申请与使用,获取用户openid手机号昵称头像,利用测试号实现本地调试微信登录授权,本地无法调试怎么办,测试公众号,在开发环境下怎么测试,用项目本地ip地址,微信公众号平

🏆 前端领域优质创作者 5063

静态编译Qt5源码(Kylin-Desktop-V10-SP1-2203-LoongArch64+qt5.15.16)

之前的文档,记录的是通用情况,本次笔者记录下Qt5的静态编译过程,供有需要的小伙伴参考使用的操作系统是Kylin-Desktop-V10-SP1-General-Release-2203-LoongArch64,处理器是龙芯3A5000,架构是loongarch。

aggs1990的专栏 1402

ZOJ 1569 Partial Sums

Partial Sums Time Limit: 2 Seconds      Memory Limit: 65536 KB Given a series of n numbers a1, a2, ..., an, the partial sum of the numbers is defined as the sum of ai, ai+1, ..., aj. You ar

desire_ing的专栏 716

基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码

基于lstm+gru+transformer的电池寿命预测健康状态预测-完整数据代码

881

ZOJ1569

n m a1 a2 a3 a4 a5 a6 a7 a8 ... S1 = a1 S2 = a1 + a2 S3 = a1 + a2 + a3 S4 = a1 + a2 + a3 + a4 S5 = a1 + a2 + a3 + a4 + a5 任何一段连续数和可用Sj - Si (i < j)求得 若Sj % m == Si % m,可以知道a[i] + a[i+1]...

weixin_30421525的博客 131

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

zoj 1569

给出n个数,求其中连续和能被m整除的个数。 普通做法,求出

学习之路 482

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

zoj 1704 || poj 1569 Myacm Triangles

初看这题,zoj过人才100,poj才400+。。。还以为是啥难题。读了读题,怎么感觉也不像难题啊。。。写了写,结束符没注意0.。。WA了一次,然后A掉了,zoj1A了。。。我去。事实证明,做得人少的不一定是难题啊。。。给你一些点,然后求出一个三角形,满足三角形内部和边上不许有其他点,求这个三角形面积最大。最多才15个点,枚举下,15^4,这个也很小啊 = =。。我判断点在三角形内部用的叉积,在三点的方向一致即可。因为只有三点,不一定是顺时针还是逆时针,都考虑就好了。#include #include

小媛在努力~ 1335

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Partial Sums ZOJ - 1569

Given a series of n numbers a1, a2, …, an, the partial sum of the numbers is defined as the sum of ai, ai+1, …, aj. You are supposed to calculate how many partial sums of a given series of numbers cou...

Alex 579

POJ1569 ZOJ1704 UVA10112 UVALive5330 Myacm Triangles【点与三角形+最值+暴力】

Myacm Triangles Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 1277 Accepted: 715 Description There has been considerable archeological work on the ancient Myacm culture. Many artifacts...

海岛Blog 539

ZOJ,PKU--训练题分类

ZOJ题目分类  初学者题:  1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331  1334 1337 1338 1350 1365 1382 1383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755  1760 1

shao1996的博客 3119

POJ 和 ZOJ 题目分类

ZOJ POJ 题目分类ZOJ题目分类初学者题:1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331 1334 1337 1338 1350 1365 1382 1383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755 1760 1763 1796 1813 1879 1889 1904 1915 1949 2001 2022 2099 21

Roowe 1849

ZOJ 题目分类

ZOJ题目分类 初学者题: 1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331 1334 1337 1338 1350 1365 1382 1383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755 1760 1763 17

yzl_rex 3604

ZOJ刷题指南

题单

Demilly123的博客 2416

ZOJ 题型分类

ZOJ题型分类 初学者题: 1001 1037 1048 1049 1051 1067 1115 1151 1201 1205 1216 1240 1241 1242 1251 1292 1331 1334 1337 1338 1350 1365 1382 1383 1394 1402 1405 1414 1494 1514 1622 1715 1730 1755 1760 1763 1796 1813 1879 1889 1904 1915 1949 2001 2022 2099 2104 2108 21

AC007 2455
上一篇: zoj1879
下一篇: zoj1582
马冬冬
博客等级 码龄15年 54粉丝 519原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值