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

Codeforces Round 953 (Div. 2)(A~D题解)

这次比赛是我最顺利的一次比赛,也是成功在中途打进前1500,写完第三道题的时候也是保持在1600左右,但是后面就啥都不会了,还吃了点罚时,虽说如此也算是看到进步了,D题学长说很简单,但是我当时分析错了,出了一点小问题,不然最后也能定格在2000左右,下次加油。

A. Alice and Books

 

题意:就是说给你n本书,让你从中间分开,阅读边编号最大的那本书,然后问你最多能读多少页,这个很简单,最后一本书肯定是要读的,我们只需要遍历从1到~n-1本书,找到那本书页数最多然后加起来就OK了

#include<bits/stdc++.h>
using namespace std;
#define int long longint t;
int n;
int a[105];
int maxn=0;
signed main()
{cin>>t;while(t--){maxn=0;cin>>n;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n-1;i++){maxn=max(maxn,a[i]);}cout<<maxn+a[n]<<"\n";}return 0;
}

 B. New Bakery

 

题意:就是说给你n个面包,每个面包有两种卖价,一个是a元,一个是b元,b元的计算是

(b-i+1)也就是说越往后卖b价越低

思路:既然b价格越来越低,那么等b的价格和a一样的时候就按a的价格卖即可,因此我们一开始做出判断如果a>b那就全按a的价格来卖,如果a<b,那么等b的价格低到和a一样的时候就按a元来卖就有最大价值

ps:同时要注意 b是否真的会低到a的价格

#include<bits/stdc++.h>
using namespace std;
#define int long long
int t;
int n;
int a,b;
signed main()
{cin>>t;while(t--){cin>>n>>a>>b;if(a>=b){cout<<a*n<<"\n";}else{int sum=0;int flag=b-a;if(n>flag){sum=(a+1+b)*(b-a)/2+(n-flag)*a;}else{sum=(b+b-n+1)*n/2;}cout<<sum<<"\n";}}return 0;
}

 C. Manhattan Permutations

 

题意:就是给你一个数组,数组的数值是1~n,然后问你其中产生的曼哈顿值是否能达到k

思路:我们首先要判断哪些情况下不会达到,首先就是因为你是交换产生的曼哈顿值,曼哈顿值一但产生就必然是偶数,而不可能是奇数,当k为奇数时直接输出NO即可

其次就是当整个序列反转的时候产生最大的曼哈顿值,因而假如我们的k要是大于反转之后的曼哈顿值也要输出NO

然后就是很简单的根据k去进行翻转就好,我们要对k的值进行判断,我们要从第一个数开始交换,然后每次交换都是要根据k值的大小去交换的(这个地方不会的直接私我吧,文学功底有限,实在太难纯文本将清楚了)

#include<bits/stdc++.h>
using namespace std;
#define int long longint t;
int n,k;
int maxn;//用于计算最大差值 
int a[200005];
signed main()
{cin>>t;while(t--){cin>>n>>k;for(int i=1;i<=n;i++)a[i]=i;if(k%2!=0){cout<<"NO\n";continue;}maxn = 0; for(int i=1;i<=n;i++){maxn+=abs(n-i+1-i);}if(maxn<k){cout<<"NO\n";continue;}int flag=2*(n-1);int num=1;while(k!=0){if(k>=flag){
//            	cout<<flag<<"\n";
//            	cout<<a[num]<<" "<<a[n-num+1]<<"flag\n";int t=a[num];a[num]=a[n-num+1];a[n-num+1]=t;k-=flag;num++;flag=2*(n-num+1-num);}else{int cnt=k/2;int t=a[num];a[num]=a[num+cnt];a[num+cnt]=t;k=0;}}cout<<"YES\n";for(int i=1;i<=n;i++){cout<<a[i]<<" ";}cout<<"\n";}return 0;
}

D. Elections 

 

题意:就是说有n个候选人,c个无主见人士,无主见的人会将票投给下标最小的那个的人,然后问你想要让第i个当选,要排除最少多少个竞争者

 思路:我们需要去对于

(1)第一个要特判,如果第一个加上未决定的票数就可以大于最多的,那么第一个人不用将任何候选人排除

(2)如果我票数就是最多的且我的下标小的话也可以在同票数的情况下获胜,并且第一个人+c个人的票也无法超过我,因此,也不需要排除别人

 (3)其余的需要判断其是否比最大值那个下标小,或者说把前面的都筛掉之后+c能否大于最多那个人得票数,如果这两个条件满足其一,就输出i-1即可

#include <bits/stdc++.h>
using namespace std;
#define int long long
int t;
int n,c;
int a[200005];
int pre[200005];
bool cmp(pair<int,int> a, pair<int,int> b)
{if(a.first==b.first) return a.second>b.second;return a.first<b.first;
}
void solve()
{cin >> n >> c;vector<pair<int,int>> b(n+1);b[0]={0,0};for(int i=1;i<=n;i++){cin >> a[i];b[i]={a[i],i};}sort(b.begin(),b.end(), cmp);for(int i=1;i<=n;i++){pre[i]=pre[i-1]+b[i].first;}int sum=0;for(int i=1;i<=n;i++){if(i==1 && a[i]+c>=b[n].first){cout << 0 << ' '; }else if(((a[i]==b[n].first && i<=b[n].second)) && a[1]+c<a[i]){cout << 0 << ' ';}else{cout << i-(b[n].second<=i || sum+a[i]+c>=b[n].first)<<' ';}sum+=a[i];}cout << "\n";
}
signed main()
{cin >> t;while(t--){solve();}return 0;
}

相关文章:

Codeforces Round 953 (Div. 2)(A~D题解)

这次比赛是我最顺利的一次比赛&#xff0c;也是成功在中途打进前1500&#xff0c;写完第三道题的时候也是保持在1600左右&#xff0c;但是后面就啥都不会了&#xff0c;还吃了点罚时&#xff0c;虽说如此也算是看到进步了&#xff0c;D题学长说很简单&#xff0c;但是我当时分析…...

晶圆切割机(晶圆划片机)为晶圆加工重要设备 我国市场国产化进程不断加快

晶圆切割机&#xff08;晶圆划片机&#xff09;为晶圆加工重要设备 我国市场国产化进程不断加快 晶圆切割机又称晶圆划片机&#xff0c;指能将晶圆切割成芯片的机器设备。晶圆切割机需具备切割精度高、切割速度快、操作便捷、稳定性好等特点&#xff0c;在半导体制造领域应用广…...

39、基于深度学习的(拼音)字符识别(matlab)

1、原理及流程 深度学习中常用的字符识别方法包括卷积神经网络&#xff08;CNN&#xff09;和循环神经网络&#xff08;RNN&#xff09;。 数据准备&#xff1a;首先需要准备包含字符的数据集&#xff0c;通常是手写字符、印刷字符或者印刷字体数据集。 数据预处理&#xff1…...

CCF 矩阵重塑

第一题&#xff1a;矩阵重塑&#xff08;一&#xff09; 本题有两种思路 第一种 &#xff08;不确定是否正确 但是100分&#xff09; #include<iostream> using namespace std; int main(){int n,m,p,q,i,j;cin>>n>>m>>p>>q;int a[n][m];for(i…...

Aigtek高压放大器在柔性爬行机器人驱动性能研究中的应用

实验名称&#xff1a;柔性爬行机器人的材料测试 研究方向&#xff1a;介电弹性体的最小能量结构是一种利用DE材料的电致变形与柔性框架形变相结合设计的新型柔性驱动器&#xff0c;所谓最小能量是指驱动器在平衡状态时整个系统的能量最小&#xff0c;当系统在外界的电压刺激下就…...

Postman下发流表至Opendaylight

目录 任务目的 任务内容 实验原理 实验环境 实验过程 1、打开ODL控制器 2、网页端打开ODL控制页面 3、创建拓扑 4、Postman中查看交换机的信息 5、L2层流表下发 6、L3层流表下发 7、L4层流表下发 任务目的 1、掌握OpenFlow流表相关知识&#xff0c;理解SDN网络中L…...

C语言王国——数组的旋转(轮转数组)三种解法

目录 一、题目 二、分析 2.1 暴力求解法 2.2 找规律 2.3 追求时间效率&#xff0c;以空间换时间 三、结论 一、题目 给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数。 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出…...

MySQL中CAST和CONVERT函数都用于数据类型转换

在 MySQL 中&#xff0c;CAST() 和 CONVERT() 函数都用于数据类型转换。虽然这两个函数在大多数情况下可以互换使用&#xff0c;但它们之间还是有一些细微的差别。 官方文档地址 https://dev.mysql.com/doc/refman/8.4/en/cast-functions.html#function_cast CAST() 函数 C…...

速盾:cdn影响seo吗?

CDN (Content Delivery Network) 是一个分布式网络架构&#xff0c;用于在全球范围内加速网站内容的传输和分发。它通过将网站的静态资源&#xff08;例如图片、CSS、JavaScript 文件等&#xff09;存储在多个服务器上&#xff0c;使用户可以从最接近他们位置的服务器上获取这些…...

期末算法复习

0-1背包问题&#xff08;动态规划&#xff09; 例题 算法思想&#xff1a; 动态规划的核心思想是将原问题拆分成若干个子问题&#xff0c;并利用已解决的子问题的解来求解更大规模的问题。 主要是状态转移方程和状态 算法描述&#xff1a; 初始化一个二维数组dp&#xff0…...

可穿戴设备:苹果“吃老底”、华为“忙复苏”、小米“再扩容”

配图来自Canva可画 随着产品功能的创新&#xff0c;可穿戴设备不再被简单地视为手机的延伸&#xff0c;而是被当成一种独立的、具有独特功能和优势的产品&#xff0c;受到了越来越多人的青睐。 一方面&#xff0c;技术的进步使得可穿戴设备在功能、性能和使用体验上得到显著提…...

AI数据分析:集中度分析和离散度分析

在deepseek中输入提示词&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个Python脚本编写的任务&#xff0c;具体步骤如下&#xff1a; 读取Excel表格&#xff1a;"F:\AI自媒体内容\AI行业数据分析\toolify月榜\toolify2023年-2024年月排行榜汇总数据.xlsx&qu…...

redis的分布式session和本地的session有啥区别

在web应用开发中&#xff0c;Session用于在多个请求之间存储用户数据。传统上&#xff0c;Session存储在服务器的内存中&#xff0c;即本地Session。然而&#xff0c;随着应用规模和复杂度的增加&#xff0c;特别是在分布式环境中&#xff0c;本地Session会遇到一些问题。这时&…...

SSH概念、用途、详细使用方法

还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#xff0c;webgl&#xff0c;ech…...

关于电脑文件的规划思考

概述 设置C、D、E、F 四个盘 C盘&#xff1a;系统数据使用&#xff0c;操作系统、其他软件需要用到的系统性资源 D盘&#xff1a;应用软件区 的使用&#xff0c;数据库、navacat、idea、visual studio、浏览器、向日葵、虚拟机…… E盘&#xff1a;工作区&#xff1a;公司资料…...

DVWA - Brute Force

DVWA - Brute Force 等级&#xff1a;low ​ 直接上bp弱口令爆破&#xff0c;设置变量&#xff0c;攻击类型最后一个&#xff0c;payload为用户名、密码简单列表 ​ 直接run&#xff0c;长度排序下&#xff0c;不一样的就是正确的用户名和密码 ​ 另解&#xff1a; 看一下…...

安卓手机文件找回方法汇总,3个技巧,不再焦虑

我们用手机来储存各种重要的信息和文件&#xff0c;无论是珍贵的照片、重要的文档还是喜爱的音乐&#xff0c;用来记录和分享生活中的每一个瞬间。但如果不小心删除了这些文件&#xff0c;我们可能会面临数据丢失的风险&#xff0c;进而产生焦虑和不安。本文将为您揭秘手机文件…...

{}初始化

文章目录 ()初始化的问题易混淆弱检查 {}初始化{}初始化是c11推荐的初始化&#xff0c;解决了上述的问题 ()则被用于强制类型转换 ()初始化的问题 易混淆 string s();不能确定是函数定义还是对象定义 弱检查 int a(3.14);3.14 可以通过 int 定义 {}初始化 {}初始化是c11推…...

小程序外卖开发中的关键技术与实现方法

小程序外卖服务凭借其便捷性和灵活性&#xff0c;正成为现代餐饮行业的重要组成部分。开发一个功能完善的小程序外卖系统&#xff0c;需要掌握一系列关键技术和实现方法。本文将介绍小程序外卖开发中的核心技术&#xff0c;并提供具体的代码示例&#xff0c;帮助开发者理解和实…...

大数据平台之运维管理工具

大数据平台的自动化运维管理工具能够大幅提升集群管理效率&#xff0c;减少人为错误&#xff0c;提高系统的稳定性和性能。这些工具通常提供集群监控、配置管理、自动化任务执行、安全管理和故障处理等功能。以下是一些主要的大数据平台自动化运维管理工具的详细介绍&#xff1…...

ARM ETE Trace ID寄存器详解与应用

1. ARM ETE Trace ID寄存器概述在ARM架构的嵌入式调试系统中&#xff0c;Trace ID寄存器(TRCIDR)是嵌入式跟踪宏单元(ETE)的核心组件。这些寄存器提供了非侵入式的实时程序流分析能力&#xff0c;对于芯片验证、性能优化和系统调试具有不可替代的价值。ETE的Trace ID寄存器从TR…...

搞懂这6个人工智能核心概念,再也不会被行业黑话难住

文章目录前言一、大模型&#xff08;LLM&#xff09;&#xff1a;读遍天下书的超级学霸1. 到底什么是大模型&#xff1f;2. 大模型的“超能力”与“致命缺陷”二、微调&#xff08;Fine-tuning&#xff09;&#xff1a;给学霸补专业课1. 微调到底在调什么&#xff1f;2. 2026年…...

VSCode毛玻璃效果实现:CSS backdrop-filter原理与性能调优指南

1. 项目概述&#xff1a;当代码编辑器遇上毛玻璃美学如果你和我一样&#xff0c;每天有超过8小时的时间是在Visual Studio Code&#xff08;以下简称VSCode&#xff09;中度过的&#xff0c;那么你肯定不止一次地折腾过它的主题和外观。从默认的深色主题到各种炫酷的Material D…...

Python开发进阶之路:探索异步编程与高性能应用

在当今快节奏的软件开发环境中&#xff0c;构建高性能、可扩展的应用程序已成为开发者的首要任务。随着互联网应用的普及&#xff0c;用户对响应速度和并发处理能力的要求越来越高。Python&#xff0c;作为一种广泛使用的高级编程语言&#xff0c;凭借其简洁的语法和强大的生态…...

利用Taotoken模型广场为不同AI应用场景挑选合适模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken模型广场为不同AI应用场景挑选合适模型 面对文本生成、代码审查、智能对话、翻译等多样化的AI应用场景&#xff0c;如…...

基于MCP的任务编排框架:让AI代理动态规划与执行复杂工作流

1. 项目概述&#xff1a;一个面向AI代理的任务编排与执行框架最近在折腾AI应用开发&#xff0c;特别是想让大语言模型&#xff08;LLM&#xff09;能更“自主”地完成一些复杂任务时&#xff0c;发现了一个绕不开的痛点&#xff1a;任务编排。你给模型一个目标&#xff0c;比如…...

N41 SRS与LTE共用XPXT开关的一些考虑

n41 SRS 与 LTE 共存冲突分析与工程设计指南 核心结论:在 n41 与 LTE 共用 XSPxT(DPDT / DP3T / DP4T)架构下,冲突是物理必然;硬件目标是将干扰压缩至软件可调度范围,系统稳定性最终取决于软件互斥策略。 一、问题本质:为什么 n41 SRS 会和 LTE 冲突? 1️⃣ n41 SRS 的…...

本地化AI代码助手部署指南:从模型选型到性能调优

1. 项目概述&#xff1a;一个面向开发者的本地化AI代码助手最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“JPeetz/Hermes-Studio”。乍一看名字&#xff0c;可能会联想到希腊神话里的信使赫尔墨斯&#xff0c;或者某个设计软件。但点进去你会发现&#xff0c;这其实是一…...

从一次内部渗透测试说起:我是如何利用SSRF漏洞,通过Gopher协议拿下Redis的

渗透测试实战&#xff1a;SSRF漏洞到Redis未授权访问的完整攻击链剖析 在一次常规的企业内部渗透测试中&#xff0c;我发现了一个看似普通的SSRF漏洞&#xff0c;却意外打开了通往内网核心系统的大门。这个故事不是教科书式的漏洞复现&#xff0c;而是一个真实攻击者视角下的完…...

Windows运行Android应用终极指南:APK Installer让你的电脑秒变安卓手机

Windows运行Android应用终极指南&#xff1a;APK Installer让你的电脑秒变安卓手机 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在移动应用生态日益丰富的今天&…...