【每日一题】—— B. Arrays Sum (Grakn Forces 2020)
🌏博客主页:PH_modest的博客主页
🚩当前专栏:每日一题
💌其他专栏:
🔴 每日反刍
🟡 C++跬步积累
🟢 C语言跬步积累
🌈座右铭:广积粮,缓称王!
一.题目描述
题目大意:
题目链接:
B. Arrays Sum (Grakn Forces 2020)
二.思路分析
这题是一个贪心模拟题
首先ai=b1i+b2i+…+bki;如下图:
所以我们可以尝试每次b的取值都和a相等,一直取到k次,k次之后就不改变b的取值,以此往复。
最后考虑一下特殊情况,就是k为1的时候,如果a数组里的值不是全相等的话,无法实现,因为第一个数肯定是0,如果k为1那么b的
三.代码展示
//https://codeforces.com/problemset/problem/1408/B
//再k次以内优先选择最优的数
//
#include<iostream>
#include<algorithm>
#define int long long
using namespace std;int s[200020];void solve()
{int n,k;cin>>n>>k;for(int i=0;i<n;i++){cin>>s[i];}//特判if(k==1&&s[0]!=s[n-1]){cout<<"-1"<<"\n";return;}int ans=0;//记录答案while(s[n-1]!=0){int cur=s[0];int count=0;//记录与k的次数for(int j=0;j<n;j++){if(s[j]==cur){s[j]=0;}else{if(count!=k){cur=s[j];count++;j--;continue;}else{for(int i=j;i<n;i++){s[i]-=cur;}break;}}}ans++;}cout<<ans<<"\n";
}signed main()
{int t;cin>>t;while(t--){solve();}return 0;
}
最后:
每日一题系列旨在养成刷题的习惯,所以对代码的解释并不会特别详细,但足够引导大家写出来,选的题目都不会特别难,但也不是特别简单,比较考验大家的基础和应用能力,我希望能够将这个系列一直写下去,也希望大家能够和我一起坚持每天写代码。
之后每个星期都会不定期更新codeforces和atcoder上的题目,想要学习算法的友友们千万别错过了,有什么疑问欢迎大家在评论区留言或者私信博主!
在这里送大家一句话:广积粮,缓称王!
相关文章:

【每日一题】—— B. Arrays Sum (Grakn Forces 2020)
🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…...
XTU-OJ 1328-数码和
题目描述 一个10进制数n在2∼16进制下可以得到的不同的数码和,求在这些数码和中出现次数最多的数码和。 比如20, 进制2345678910111213141516数码10100202110403226242220191817161514数码和2424586421098765 其中数码和2和4分别出现了3次,为…...

混入组件 (mixin)
1 什么是混入以及作用 *混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。作用:主要作用是继承和封装…...

ubuntu18.04 RTX3060 rangnet++训练
代码链接: https://github.com/PRBonn/lidar-bonnetal 安装anaconda环境为 CUDA 11.0(11.1也可以) anaconda环境如下 numpy1.17.2 torchvision0.2.2 matplotlib2.2.3 tensorflow1.13.1 scipy0.19.1 pytorch1.7.1 vispy0.5.3 opencv_python…...
HZOJ-72:猜拳
题目描述 在一次聚会中,每人拿着一张印有石头、剪刀、布的卡片,每个人具体拿得是哪种卡片不得而知。 现在告诉你某些人之间的胜负关系,并会询问某两个人之间的对战结果,人按照从 11 到 n� 编号。 对于每个…...

【Django 03】QuerySet 和 Instance应用
1. DRF QuerySet 和 Instance功能概述 1.1 QuerySet 从数据库中查询结果存放的集合称为 QuerySet。 Django ORM用到三个类:Manager、QuerySet、Model。每个Model都有一个默认的 manager实例,名为objects。Django的ORM通过Mode的objects属性提供各种数据…...
安装 mysql
gpt: 要在 Debian 11 上安装 MySQL 数据库服务器,您可以使用以下步骤: 1. **更新软件包列表**:在安装任何软件之前,始终建议首先更新软件包列表,以确保获取最新的软件包信息。在终端中运行以下命令: bash…...

文件管理系统的基本认识
1.文件的属性 文件的定义:一组有意义的信息的集合。 1.文件名: 由创建文件的用户决定文件名,主要是为了方便用户找到文件,同一目录下不允许有重名文件。 2.标识符: 一个系统内的各文件标识符唯一,对用户来说毫无可读性, 因此…...

Excel·VBA制作工资条
看到一篇博客《excel表头_Excel工资表怎么做?3分钟学会利用函数生成工资表》,使用排序功能、函数制作工资条。但如果需要经常制作工资条,显然使用VBA更加方便 VBA制作工资条 Sub 制作工资条()Dim title_row&, blank_row&, ws_new$,…...
【SA8295P 源码分析 (二)】10 - HQX Display(OpenWFD)qcdisplaycfg_ADP_STAR_LA.xml 配置文件解析
【SA8295P 源码分析】10 - HQX Display(OpenWFD)qcdisplaycfg_ADP_STAR_LA.xml 配置文件解析 一、HQX Display 介绍1.1 OpenWF Display Driver二、HQX Display 配置文件参数解析2.1 qcdisplaycfg.xml 配置文件2.1 配置两个 DPUs in QNX2.1.1 配置 graphics_ADP_STAR.conf : …...

git操作说明
SourceURL:file:///home/kingqi/桌面/git操作说明.doc 本地建立仓库 mkdir namebao cd namebao pwd git init 初始化 cd .git/ gedit config 本地存储 进入目录上传全部文件 git add . 提交 git commit -m “说明” 远程提交 复制gitee或者github仓库链接 可以直…...
数据结构——栈与队列
数据结构——栈与队列 文章目录 数据结构——栈与队列一、栈的定义二、队列的定义 一、栈的定义 栈(Stack)是一种具有特殊限制的线性数据结构,它只允许在表的一端进行插入和删除操作。这一端被称为栈顶(Top)ÿ…...

Redis入门到实战(四、原理篇)RESP协议
目录 2、Redis内存回收-过期key处理3、Redis内存回收-内存淘汰策略 Redis是一个CS架构的软件,通信一般分两步(不包括pipeline和PubSub): 客户端(client)向服务端(server)发送一条命令…...
c++屏蔽qq或者wechat的好友对局域网环境下的指定关键字
要使用C来屏蔽QQ或WeChat的好友对家庭网络或局域网环境下的指定关键字,你需要编写一个网络包过滤程序,该程序需要有能力拦截并分析网络流量,然后根据指定的规则(如关键字)来阻止或允许数据包的传输。然而,需…...

rviz中显示的点云与网格垂直,将保存的pcd文件转为点云在rviz中显示,并使用octomap_server将点云地图转化为八叉树地图和占据栅格地图
文章目录 问题:点云与网格垂直背景解决方法:对点云坐标做变换,绕x轴旋转90度,将z轴指向上方将pcd转成点云,在RVIZ中显示点云图创建launch rviz显示 问题:点云与网格垂直 用lego-loam建图时用rosbag录制相关…...

个人博客系统的总结
个人博客系统 1、项目背景: 个人博客系统的兴起和发展是与信息技术和互联网的迅猛发展密切相关的。随着互联网的普及和数字化时代的到来,越来越多的人开始使用互联网平台来表达自己的观点、分享知识和展示个人创作。个人博客系统作为一种在线的个人信息…...

小程序之实例会议OA的首页 (3)
⭐⭐ 小程序专栏:小程序开发专栏 ⭐⭐ 个人主页:个人主页 目录 编辑 一.前言 二.flex弹性布局 flex属性 2.1 display: flex 弹性布局属性 2.2 flex-direction属性 2.3 flex-wrap属性 2.4 flex-flow属性 2.5 justify-content属性 三.首页轮播…...
Gson 问题汇总
Gson 自定义TypeAdapter 使用Gsonspringboot中指定Gson为默认消息转换器自定义Gson实例解决方法设定日期类型的格式处理特殊格式数据解析serialVersionUID字段报错int类型,转换后变成了double类型 使用Gson gson是google推出的json解析框架,相较于其他json解析框架,它速度更快…...

css-水滴登录页
效果图: html <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><link type"text/css" rel"stylesheet" href"login.css" /></head><body><…...
Spark Streaming 整合 Flume
本文代码链接: https://download.csdn.net/download/shangjg03/88442192 1.简介 Apache Flume 是一个分布式,高可用的数据收集系统,可以从不同的数据源收集数据,经过聚合后发送到分布式计算框架或者存储系统中。Spark Straming 提供了以下两种方式用于 Flume 的整合。 2.推…...

华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...

ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...

如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...