当前位置:网站首页>2022.8.8考试清洁工老马(sweeper)题解
2022.8.8考试清洁工老马(sweeper)题解
2022-08-10 01:55:00 【bj_hacker】
题目
3、清洁工老马(sweeper)–900
时间限制: | 空间限制:
题目描述:
有 个自然数 。
请找出至少进行多少次操作使 ,一次操作包括如下步骤:
1.选择两个整数 满足 ,且 ;
2.将 修改为 ;
3.将 修改为 。
共 组测试数据。
输入格式:
第一行仅有一个正整数 ( ),表示测试数据的组数。
接下来有 组测试数据:
第一行有一个正整数 ( ,且所有测试数据中 之和不超过 );
第二行为 个整数 ( )。
输出格式:
对于每组测试数据,输出一行一个整数,表示至少多少次操作(可以为0)。
思路
思路为搭桥,0要用一个去补,所有的大于0的去相加,第一个非0数后的0算作1去相加 搭桥 {搭桥} 搭桥,不算最后一个。
重点
ans最大为2*105*109= 2 * 1014
要开long long
代码实现
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn=2e5+10;
int t,n;
ll ans;
int a[maxn];
int main(){
scanf("%d",&t);
while(t--){
ans=0;
bool flag=false;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
if(i==n)break;
if(a[i]){
ans+=a[i];
flag=true;
}
else {
if(flag)ans++;
else continue;
}
}
printf("%lld\n",ans);
}
return 0;
}
边栏推荐
- Linux(Centos7)服务器中配置Mysql主从数据库,以及数据库的安装,防火墙操作
- Data Governance (5): Metadata Management
- type-C 边充电边听歌(OTG) PD芯片方案,LDR6028 PD充电加OTG方案
- 按钮倒计时提醒
- 别再用 offset 和 limit 分页了,性能太差!
- 【干货】集成学习原理总结
- In the 2022 gold, nine, silver and ten work tide, how can I successfully change jobs and get a high salary?
- [语法糖] 关于类别字符串到类别数字id的映射
- Under pressure, there must be cowards
- OpenCV图像处理学习三,Mat对象构造函数与常用方法
猜你喜欢
随机推荐
ImportError: Unable to import required dependencies: numpy
桌面云组件介绍与安装
自动化测试中,测试数据与脚本分离以及参数化方法
Research on Ethernet PHY Chip LAN8720A Chip
【论文粗读】(NeurIPS 2020) SwAV:对比聚类结果的无监督视觉特征学习
在蓝图中给组件动态加子Actor组件
如何让数据库中的数据同步
深度学习(五) CNN卷积神经网络
web crawler error
【wpf】拖拽的简单实现
微透镜阵列后光传播的研究
【wpf】自定义事件总结(Action, EventHandler)
空间复杂度为O(1)的归并排序
Under pressure, there must be cowards
.Net interview experience summary
【每日一题】1413. 逐步求和得到正数的最小值
手把手教你搭建ELK-新手必看-第一章:什么是ELK?
781. 森林中的兔子
Unity editor extension interface uses List
C# 正则表达式分组查询









