Codeforces Round 926 (Div. 2)(A B C)

比赛:Codeforces Round 926 (Div. 2)

目录:A B C

A题

题目:Sasha and the Beautiful Array

标签: 构造(constructive algorithms)贪心(greedy)排序(sortings)

题目大意

  • 有一个长度为 n, 数值为 1 − 1e9的数组a。重新排列数组 a 中的元素使得(ai - ai-1) i从2到n总和最大,求最大和。

思路

  • 对所有(ai- ai-1) i 取值2~n 求和,即(a2 - a1) + (a3 - a2) + (a4 - a3) +… + (an - an-1) = an - a1,转化为对a数组从新排序使an - a1最大
  • 所以将最大值放在最后,最小值放在最前是最优的,a数组中最大值减最小值即为答案

AC代码

#include <bits/stdc++.h>
using namespace std;
void solve()
{int n; cin >> n;vector<int> a(n);for (int i = 0; i < n; i++)cin >> a[i];int ans = *max_element(a.begin(), a.end()) - *min_element(a.begin(), a.end());cout << ans << "\n";
} 
int main()
{int T; cin >> T;while(T--)solve();return 0;
}

B题

题目:Sasha and the Drawing

标签: 构造(constructive algorithms)贪心(greedy)数学(math)

题目大意

  • 在一个nxn的正方形网格中涂色使得至少K条对角线经过至少有一个着色的单元格,求最少要涂色多少单元格
  • 大小为 n×n 的正方形网格共有 4n−2 条对角线。

思路

  • 考虑涂色一个单元格使其覆盖尽可能多的对角线,不难看出涂色一个单元格最多覆盖两条对角线,最多同时有2n - 2个单元格能达到覆盖两条对角线(所有被覆盖的对角线不重复)共可覆盖4n - 4条对角线,剩余两条对角线每条需要涂色一个单元格
  • 当要被覆盖对角线条数k<=4n - 4 时答案就是: k除以2上取整,k>4n-4时就是: 2n - 2 + (k - (4n - 4))

AC代码

#include <bits/stdc++.h>
using namespace std;
void solve()
{int n, k;cin >> n >> k;if(k <= 4*n - 4)	cout << (k + 1) / 2 << endl;else cout << 2*n - 2 + (k - (4*n - 4)) << endl;
} 
int main()
{int T; cin >> T;while(T--)solve();return 0;
}

C题

题目:Sasha and the Casino

标签: 二分搜索(binary search)暴力枚举(brute force)动态规划(dp)博弈论(games)贪心(greedy)数学(math)

题目大意

  • 每次可以下注y个硬币,赢了将获得k*y个硬币(即硬币数量将增加 y⋅(kz−1)),输了将输掉全部赌注(即硬币数量将减少 y )。
  • 投注金额必须始终是一个正整数,并且不能超过当前手里的硬币数量。
  • 连续输的次数不会超过x次。
  • 给定:k(赢了时的倍率),x(最多连续输的次数),a(初始手里的硬币数),问:是否可以下注保证赢取任意数量的硬币

思路

  • 需要保证赢钱即:找到一种下注方式让其每轮只可能赢钱不可能输钱,
  • 在一轮中已经输了sum个硬币,那么下局如果要赢回需要增加: (sum / (k - 1) + 1 )* (k - 1)枚硬币,即:下注y = sum / (k - 1) + 1

AC代码

#include <bits/stdc++.h>
#define int long long
using namespace std;
void solve()
{int k, x, a;cin >> k >> x >> a;// 每次下注y,一轮累计输钱sum(假设每局下注都输)int y, sum = 0;// 一轮最多连续输x次,加最后一次赢,共x+1次下注for(int i = 0; i <= x; i ++ ){// 保证每次下注如果赢了都能将输的捞回 y = sum / (k - 1) + 1;sum += y;// 如果将手上钱输光了if(sum > a){cout << "NO" << endl;return;} }cout << "YES" << endl;
} 
signed main()
{int T; cin >> T;while(T--)solve();return 0;
}

logo

//へ     /|
//  /\7    ∠_/
//  / │   / /
// │ Z _,< /   /`ヽ
// │     ヽ   /  〉
//  Y     `  /  /
// イ● 、 ●  ⊂⊃〈  /
// ()  へ    | \〈
//  >ー 、_  ィ  │ //
//  / へ   / ノ<| \\
//  ヽ_ノ  (_/  │//
//	  7       |/
//
/*__   _,--="=--,_   __/  \."    .-.    "./  \/  ,/  _   : :   _  \/` \\  `| /o\  :_:  /o\ |\__/`-'| :="~` _ `~"=: |\`     (_)     `/.-"-.   \      |      /   .-"-.
.---{     }--|  /,.-'-.,\  |--{     }---.)  (_)_)_)  \_/`~-===-~`\_/  (_(_(_)  (
(                         				))                                     (
'---------------------------------------'
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/687271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Puppeteer 使用实战:如何将自己的 CSDN 专栏文章导出并用于 Hexo 博客(一)

文章目录 效果展示说明利用工具整体思路Puppeteer 使用笔记保持登录状态打开新的页面点击 dialog跳转页面设置页面可见窗口大小寻找元素等待元素出现 整体代码 效果展示 说明 看了看网上很少做这个功能&#xff0c;但是我有这个需求&#xff0c;就抽出时间写了个简单的工具目前…

(十一)Java 之 String 类

目录 一. 前言 二. String 类 2.1. 创建字符串 2.2. 字符串长度 2.3. 连接字符串 2.4. 创建格式化字符串 2.5. String 常用方法 三. 课后习题 一. 前言 在 Java 中&#xff0c;String 类是一种符合面向对象思想的字符串类&#xff0c;String 类是用于表示字符串的类。它…

ChatGPT的底层核心概念

ChatGPT的底层核心概念 1.1 词嵌入 ​ 词嵌入是一种将单词或文本转换为数字向量的技术。简单来说&#xff0c;它将自然语言中的词汇转换为计算机可以理解的形式&#xff0c;因为计算机无法直接理解单词或文本。例如&#xff0c;对于句子“The monkey is on the horse"&a…

React中hooks使用限制及保存函数组件状态

React Hooks 的限制主要有两条&#xff1a; 不要在循环、条件或嵌套函数中调用 Hook&#xff1b; 在 React 的函数组件中调用 Hook。 首先&#xff0c;Hooks是一个对象&#xff0c;大致结构如下&#xff1a; const hook: Hook {memoizedState: null,baseState: null,baseQ…

面试题之项目做过哪些性能优化可以从哪方面说?

常见的性能优化措施&#xff1a; 1. 减少 HTTP 请求数&#xff1a;合并和压缩 CSS、JavaScript ⽂件&#xff0c;使⽤雪碧图、字体图标等减少图片请求&#xff0c;减少不必要的资源请求。 2. 减少 DNS 查询&#xff1a;减少使用不同的域名&#xff0c;以减少 DNS 查询次数。…

19-k8s的附加组件-coreDNS组件

一、概念 coreDNS组件&#xff1a;就是将svc资源的名称解析成ClusterIP&#xff1b; kubeadm部署的k8s集群自带coreDNS组件&#xff0c;二进制部署需要自己手动部署&#xff1b; [rootk8s231 ~]# kubectl get pods -o wide -A k8s系统中安装了coreDNS组件后&#xff0c;会有一个…

ubuntu20.04.6wifi图标消失问题解决方案

介绍 本人电脑 惠普战99 2023版 集显版 双系统&#xff1a;win11 ubuntu 20.04.6LTS 安装ubuntu系统后WiFi图标无法显示&#xff0c;四处寻找方法&#xff0c;得以解决 注意 本人亲测有效&#xff0c;但不保证所有机型适用 方法 下载firmware&#xff1a; 链接: https:…

【算法题】108. 将有序数组转换为二叉搜索树

题目 给你一个整数数组 nums &#xff0c;其中元素已经按 升序 排列&#xff0c;请你将其转换为一棵 高度平衡 二叉搜索树。 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。 示例 1&#xff1a; 输入&#xff1a;nums [-10,-3,0…

AcWing1239.乘积最大

[题目概述] 给定 N 个整数 A1,A2,…AN。 请你从中选出 K 个数&#xff0c;使其乘积最大。 请你求出最大的乘积&#xff0c;由于乘积可能超出整型范围&#xff0c;你只需输出乘积除以 1000000009 的余数。 注意&#xff0c;如果 X<0&#xff0c; 我们定义 X 除以 1000000009…

平台组成-门户系统

门户系统是整个平台的门面。从功能上讲&#xff0c;可以区分为内部门户和外部门户。内部门户面向内部应用&#xff0c;是内部管理的入口&#xff0c;一般运行在内网里&#xff1b;外部门户面向公众&#xff0c;是企业宣传、对外服务的窗口&#xff0c;一般运行在外网上。从访问…

20240211-日常学习(嵌入式微处理器)

目录 嵌入式微处理器的存储体系结构指令集主流的嵌入式微处理器 一些具体介绍冯诺依曼/普林斯顿结构ARM系列嵌入式微处理器 嵌入式微处理器的 存储体系结构 冯诺依曼/普林斯顿结构哈佛结构 指令集 RISCCISC 主流的嵌入式微处理器 ARM系列嵌入式微处理器MIPS系列嵌入式微处…

解锁Spring Boot中的设计模式—05.策略模式:探索【策略模式】的奥秘与应用实践!

1.策略者工厂模式&#xff08;Map版本&#xff09; 1.需求背景 假设有一个销售系统&#xff0c;需要根据不同的促销活动对商品进行打折或者其他形式的优惠。这些促销活动可以是针对不同商品类别的&#xff0c;比如男装、女装等。 2.需求实现 活动策略接口&#xff1a;定义了…

Java:集合以及集合进阶 --黑马笔记

一、集合概述和分类 1.1 集合的分类 除了ArrayList集合&#xff0c;Java还提供了很多种其他的集合&#xff0c;如下图所示&#xff1a; 我想你的第一感觉是这些集合好多呀&#xff01;但是&#xff0c;我们学习时会对这些集合进行分类学习&#xff0c;如下图所示&#xff1a;…

112 C++可调用对象,std::function std::bind

一 可调用对象 本节课将可调用对象整理一下 1 函数指针 2.具有operator()成员函数的类对象仿函数&#xff08;&#xff09; 3. 可被转换为函数指针的类对象 4. 类成员函数指针 5.总结 二 std::function(可调用对象包装器) 1.绑定普通函数 2.绑定类的静态成员函数 3.绑定仿函数…

javaweb学习day03(JS+DOM)

一、javascript入门 1 官方文档 地址: https://www.w3school.com.cn/js/index.asp离线文档: W3School 离线手册(2017.03.11 版).chm 2 基本说明 JavaScript 能改变 HTML 内容&#xff0c;能改变 HTML 属性&#xff0c;能改变 HTML 样式 (CSS)&#xff0c;能完成 页面的数据…

K8s进阶之路-Pod的生命周期

Pod创建过程&#xff1a; 首先创建一个pod&#xff0c;然后创建一个API Server 和 Etcd【把创建出来的信息存储在etcd中】 然后创建 Scheduler&#xff0c;监控API Server是否有新的Pod&#xff0c;如果有的话&#xff0c;会通过调度算法&#xff0c;把pod调度某个node上 在nod…

HDR 摄影

HDR 摄影&#xff0c;即高动态范围 High Dynamic Range摄影&#xff0c;旨在通过合并不同曝光值的照片来捕捉场景中从最亮到最暗部分的全部细节。 这种技术对于在一个图像中展现广泛的亮度范围特别有用&#xff0c;尤其是在自然光线条件下&#xff0c;如直射日光或阴影区域&…

力扣代码学习日记四

Problem: 459. 重复的子字符串 文章目录 思路解题方法复杂度代码 思路 给定一个非空的字符串 s &#xff0c;检查是否可以通过由它的一个子串重复多次构成。 示例 1: 输入: s "abab" 输出: true 解释: 可由子串 "ab" 重复两次构成。示例 2: 输入: s &q…

独孤思维:出了20多单,但优化空间巨大

前些日子&#xff0c;在绝版书陪跑群里&#xff0c;有个学员&#xff0c;说自己买了20多本书。 大家都觉得挺不错的&#xff0c;想听听她分享。 结果分享出来以后&#xff0c;我觉得有很大的优化空间。 虽然她把每个精准的对标店铺&#xff0c;做了筛选。 但是对于单个品&a…

BUGKU-WEB source

题目描述 题目截图如下&#xff1a; 进入场景看看&#xff1a; 解题思路 看源码&#xff0c;看F12网络请求没有东西只能老老实实按照提示用Linux去扫描目录 相关工具 kali虚拟机安装gobuster 或者dirsearch 解题步骤 先查看源码&#xff1a; flag{Zmxhz19ub3RfaGvyzS…