Codeforces Round 943 (Div. 3) A~E

news2024/9/23 11:21:37

A. Maximize?

Problem - A - Codeforces

给定x求出使这个式子最大的y:

不用想复杂直接循环枚举即可。

#include<bits/stdc++.h>
using ll=long long;
ll n,m;
void solve()
{
    int x;
    std::cin>>x;
    ll ans=0,y;
    for(int i=1;i<x;i++)
    {
        if(std::__gcd(i,x)+i>ans){
            ans=std::__gcd(i,x)+i;
            y=i;
        }
    }
    std::cout<<y<<'\n';
}
signed main()
{
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    }
    return 0;
}

B. Prefiquence

Problem - B - Codeforces

看了一会感觉是二分4min就过了,感觉之前在洛谷刷二分还是蛮大作用的,从只会板子到看得出用得上。

#include<bits/stdc++.h>
using ll=long long;
ll n,m;
std::string a,b;
bool check(int x)
{
    int l=0;
    for(int i=0;i<m;i++)
    {
        if(b[i]==a[l])
        {
            l++;
            if(l>=x) return 1;
        }
    }
    return 0;
}
void solve()
{
    std::cin>>n>>m;

    std::cin>>a>>b;
    int l=0,r=n,res=0;
    while(l<=r)
    {
        int mid=l+r>>1;
        if(check(mid)){
            l=mid+1;
            res=mid;
        }else r=mid-1;
    }
    std::cout<<res<<'\n';
}
signed main()
{
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    }
    return 0;
}

 C. Assembly via Remainders

Problem - C - Codeforces

模拟一下样例即可推结论,本质是模拟。

#include<bits/stdc++.h>
using ll=long long;
const int N=510;
int a[N],b[N];
ll n,m;
void solve()
{
    std::cin>>n;
    for(int i=2;i<=n;i++)
    {
        std::cin>>a[i];
    }
    //a[i]=x[i]%x[i-1]
    b[1]=a[2]+1;
    for(int i=2;i<=n;i++)
    {
        if(a[i]<b[i-1]){
            b[i]=a[i]+b[i-1];
            while(b[i]<=a[i+1])
            {
                b[i]+=b[i-1];
            }
        }
    }
    for(int i=1;i<=n;i++)
    {
        std::cout<<b[i]<<" ";
    }
    std::cout<<'\n';
}
signed main()
{
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    }
    return 0;
}

D. Permutation Game

Problem - D - Codeforces

 这个题想法就是,走的走法一定是一直往下走,要么停在一个点,不可能出现走停走的情况。然后我们直接把停在每一个点的情况全都考虑一下就好,比较两个人得分的最大值。

#include<bits/stdc++.h>
using ll=long long;
const int N=2e5+10;
ll a[N],p[N];
ll n,k,pb,ps;
bool st[N];
void solve()
{
    memset(st,0,sizeof st);
    std::cin>>n>>k>>pb>>ps;
    for(int i=1;i<=n;i++)
    {
        std::cin>>p[i];
    }
    for(int i=1;i<=n;i++)
    {
        std::cin>>a[i];
    }
    ll l=0,r=0;
    ll now=pb;
    ll nsum=0;
    for(ll i=1;i<=std::min(n,k);i++)
    {
        if(st[now]) break;
        st[now]= true;
        l=std::max(l,nsum+a[now]*(k-i+1));
        nsum+=a[now];
        now=p[now];
    }
    nsum=0,now=ps;
    memset(st,0,sizeof st);
    for(ll i=1;i<=std::min(n,k);i++)
    {
        if(st[now]) break;
        st[now]= true;
        r=std::max(r,nsum+a[now]*(k-i+1));
        nsum+=a[now];
        now=p[now];
    }
    //std::cout<<l<<" "<<r<<'\n';
    if(l>r) std::cout<<"Bodya"<<'\n';
    else if(l<r) std::cout<<"Sasha"<<'\n';
    else std::cout<<"Draw"<<'\n';
}
signed main()
{
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int t=1;
    std::cin>>t;
    while(t--)
    {
        solve();
    }
    return 0;
}

 E. Cells Arrangement

Problem - E - Codeforces

这题我看的讲解,结论很简单,但是自己考场上想出来确实不那么容易。

就是一个n*n的棋盘,最多点数也就是从0~2*(n-1),如果能构造出一种方法把这几种情况全都覆盖那么毫无疑问就是最优解。

然后手捏一下会发现n个点全在对角线上的情况,能构造出0、2、4、6,我们只要能构造出一个1就可以了。然后会发现把第二个点移到第一个点旁边就能构造出1了,然后我们就能得到0~2*(n-1)的所有情况。

#include <bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;
typedef pair<int, int> PII;
void solve() 
{
	int n; 
    cin >> n;
	cout << "1 1" << endl;
	cout << "1 2" << endl;
	for (int i = 3; i <= n; i ++ ) {
		cout << i << ' ' << i << endl;
	}
}
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	int tt; cin >> tt;
	while (tt -- ) solve();
	return 0;
}

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

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

相关文章

鸿蒙内核源码分析(信号量篇) | 谁在负责解决任务的同步

基本概念 信号量&#xff08;Semaphore&#xff09; 是一种实现任务间通信的机制&#xff0c;可以实现任务间同步或共享资源的互斥访问。 一个信号量的数据结构中&#xff0c;通常有一个计数值&#xff0c;用于对有效资源数的计数&#xff0c;表示剩下的可被使用的共享资源数…

linux 调试-kdb 调试内核-1

目标&#xff1a;打印bcm2835_spi_transfer_one 是如何从用户空间开始调用的 1. kernel 配置 KDB配置选项 添加 spi 控制器驱动 和 spi 设备驱动 2. 调试流程 调试内核-系统启动之后 1. 开发板进入kdb,等待pc 连接 rootraspberrypi:~# echo "ttyS0,115200"…

抖音小店如何快速出单?内行人闭口不提的诀窍,一篇全曝光!

哈喽~我是电商月月 新手做抖店不成功&#xff0c;最大的问题就是不懂技巧&#xff0c;不懂规则&#xff0c;不懂玩法&#xff0c;你基础事项&#xff0c;思维方向都没选好&#xff0c;再怎么努力也别想出单 看下去&#xff0c;新手在开店后不要着急选品&#xff0c;先把这些问…

数据结构复习指导之树的基本概念

文章目录 树与二叉树 考纲内容 复习提示 前言 1.树的基本概念 1.1树的定义 1.2基本术语 1.3树的性质 树与二叉树 考纲内容 &#xff08;一&#xff09;树的基本概念 &#xff08;二&#xff09;二叉树 二叉树的定义及其主要特征&#xff1b;二叉树的顺序存…

22 Debian如何配置Apache2(2)虚拟主机

作者&#xff1a;网络傅老师 特别提示&#xff1a;未经作者允许&#xff0c;不得转载任何内容。违者必究&#xff01; Debian如何配置Apache2&#xff08;2&#xff09;虚拟主机 《傅老师Debian小知识库系列之22》——原创 前言 傅老师Debian小知识库特点&#xff1a; 1、最…

文件加密软件排行榜前四名(2024年4大好用的加密软件推荐)

说到文件加密&#xff0c;想必大家都很熟悉&#xff0c;文件加密已经普遍应用&#xff0c;文件加密是一种重要的安全措施&#xff0c;可以确保数据的机密性、完整性和可用性&#xff0c;降低因数据泄露或丢失带来的风险 。 下面小编给大家分享几款常用的加密软件&#xff0c;…

【redis】Redis数据类型(五)ZSet类型

目录 类型介绍特点补充 使用场景 Zset类型数据结构ziplist&#xff1a;压缩列表&#xff08;参考之前的文章&#xff09;skiplist&#xff1a;跳表解析 面试题&#xff1a;MySQL索引为什么用B树而不用跳表区别总结 常用命令ZADD示例 ZREM示例 ZCARD示例 ZCOUNT示例 ZSCORE示例 …

spring高级篇(九)

boot的执行流程分为构造SpringApplication对象、调用run方法两部分 1、Spring Boot 执行流程-构造 通常我们会在SpringBoot的主启动类中写以下的代码&#xff1a; 参数一是当前类的字节码&#xff0c;参数二是main的args参数。 public class StartApplication {public static…

【微信小程序开发】微信小程序注册,配置开发者工具

准备工作 微信小程序小程序开发流程 开发过程注册小程序开发者工具开发界面介绍 微信小程序 一种新的开发能力&#xff0c;可以在微信内被便捷的获取和传播&#xff0c;具有出色的用户体验 地址&#xff1a;https://mp.weixin.qq.com/ 注册微信小程序 在进行开发之前我们应该…

从开发角度理解漏洞成因(02)

文章目录 文件上传类需求文件上传漏洞 文件下载类需求文件下载漏洞 扩展 留言板类&#xff08;XSS漏洞&#xff09;需求XSS漏洞 登录类需求cookie伪造漏洞万能密码登录 持续更新中… 文章中代码资源已上传资源&#xff0c;如需要打包好的请点击PHP开发漏洞环境&#xff08;SQL注…

如何使用高德地图的 Loca 展示 gpx 文件的 3D 路径,Loca.LineLayer

如何使用高德地图的 Loca 展示 gpx 文件的 3D 路径&#xff0c;Loca.LineLayer 找寻了好久&#xff0c;终于将这个展示 3D 路径的功能实现了。 在线实例&#xff1a; http://kylebing.cn/tools/map/#/gpx/gpx-viewer-3d 这里是用于展示 gpx 路径&#xff0c;关于 gpx 的相关知…

Voice Conversion、DreamScene、X-SLAM、Panoptic-SLAM、DiffMap、TinySeg

本文首发于公众号&#xff1a;机器感知 Voice Conversion、DreamScene、X-SLAM、Panoptic-SLAM、DiffMap、TinySeg Converting Anyones Voice: End-to-End Expressive Voice Conversion with a Conditional Diffusion Model Expressive voice conversion (VC) conducts speak…

速卖通自养号测评海外环境:成本、步骤、技巧全掌握

相信不少涉足跨境业务的企业和商家都对速卖通耳熟能详。作为当下炙手可热的跨境电商平台&#xff0c;速卖通在国内电商市场渐趋饱和的背景下&#xff0c;吸引了众多国内卖家的目光。他们纷纷入驻速卖通&#xff0c;希望借助这一平台的力量&#xff0c;成功打通跨境业务渠道。然…

腾讯会议崩溃解决

突然腾讯会议就罢工了,腾讯会议的主界面可以登陆上去,不会异常退出: 这时无论是通过别人提供的会议号“加入会议” 还是 “快速会议”,都会出现下面的异常,并崩溃退出: 在网上搜“SteinwayMSVCRT”导致的腾讯会议的错误,会告诉你使用金山毒霸的XX医生解决,下载了金山毒…

新代数控Syntec网络IP配置设定教程

点击面板【维护】→【网络设定】→【IP地址取得方法&#xff1a;直接指定IP地址】→【IP地址&#xff1a;输入采集需要设定的IP】→【子网掩码&#xff1a;255.255.255.0】→【预设网关】 输入方法&#xff1a;点击面板上的【ENTER】输入键&#xff0c;输入相关参数即可。

git使用注意事项事项

以下操作均在gitee平台上实现 文章目录 1、本地仓库和远程仓库有冲突2、git提交自动忽略某些文件3、git无法push提交到远程仓库 1、本地仓库和远程仓库有冲突 在web端修改了文件内容或者删除了文件&#xff0c;本地仓库需要重新把远程仓库拉取到本地&#xff0c;或者强制提交到…

Mars3d实现用一个button控制一个map.control的显示与隐藏

原生js,想做一个button,控制比如compass的显示与隐藏 点一下显示 再次单击的时候就隐藏掉 写了一个function控制显示隐藏 function addCompass(){ if(compass.showtrue) { compass.showfalse; } else{ compass.showtrue; } } 功能示例(Vue版) | Mars3D三维可视化平台 | 火星…

面试中算法(无序数组排序后最大相邻差)

有一个无序整型数组&#xff0c;求该数组排序后的任意两个相邻元素的最大差值&#xff1b;要求时间复杂度和空间复杂度尽可能低。 &#xff08;1&#xff09;任意一种时间复杂度为O (nlogn&#xff09;的排序算法&#xff08;如快速排序&#xff09;给原数组排序&#xff0c;然…

知识库工具:付费的HelpLook AI知识库比免费的牵牛易帮好在哪里

在知识管理的领域中&#xff0c;选择合适的知识库工具对于企业来说很重要。市面上有很多知识库产品&#xff0c;有付费的和免费的&#xff0c;但是还是有很多企业会选择使用付费的&#xff0c;而不是免费的。这是为什么呢&#xff1f;这就是今天要探讨的问题&#xff0c;下面就…

机器学习(二) ----------K近邻算法(KNN)+特征预处理+交叉验证网格搜索

目录 1 核心思想 1.1样本相似性 1.2欧氏距离&#xff08;Euclidean Distance&#xff09; 1.3其他距离 1.3.1 曼哈顿距离&#xff08;Manhattan Distance&#xff09; 1.3.2 切比雪夫距离&#xff08;Chebyshev distance&#xff09; 1.3.3 闵式距离&#xff08;也称为闵…