Codeforces Round 930 (Div. 2)

news2024/11/18 11:44:57

在这里插入图片描述

Codeforces Round 930 (Div. 2)

Codeforces Round 930 (Div. 2)

A. Shuffle Party

题意:

给出长度为n的整数数组a, a i a_i ai= i,对于k>=2的下标进行运算,设d为k除本身外最大的除数,

操作为交换( a k a_k ak, a d a_d ad),从小到大交换操作后数组元素1的位置。

思路:

从前往后元素1下标的移动:1->2->4->…->x

最终x为小于n的最大二次幂。

AC code:

void solve() {
    cin >> n;
    for (int i = 32; i >= 0; i --) {
        if (pow(2, i) <= n) {
            cout << (int)pow(2, i) << endl;
            return;
        }
    }
}

B. Binary Path

题意:

略,这构造。。。

思路:

  • 首先是找到最小字典序的路径字符串,保证长度最短则有且只能换行一次,只有第一次遇到对角线右上大于左下的时候进行换行,可以同时保证路径长度最短和字典序最小。
  • 然后对于相同的最佳路径,从换行的列开始向前找,遇到对角线相等则相同路线+1,否则结束寻找。

​ 可以通过画二叉树路径来模拟可能的结果。

  • 注意不需要提前进行换行的情况。

AC code:

void solve() {
    cin >> n;
    for (int i = 0; i < 2; i ++) {
        string s; cin >> s;
        for (int j = 0; j < n; j ++) {
            a[i][j] = s[j];
        }
    }
 
    int ans = 1;
    string s = "";
    int x = 0, y = 0, pos = n - 1;
    for (int i = 1; i < n; i ++) {
        s += a[0][i - 1];
        if (a[0][i] > a[1][i - 1]) {
            pos = i - 1;
            break;
        }
    }
    if (pos == n - 1) {
        s += a[0][n - 1];
        s += a[1][n - 1];
        for (int i = pos; i >= 0; i --) {
            if ((a[0][i] == a[1][i - 1])) ans += 1;
            else break;
        }
    }
    else {
        for (int i = pos; i < n; i ++) s += a[1][i];
    
        for (int i = pos; i >= 0; i --) {
            if ((a[0][i] == a[1][i - 1])) ans += 1;
            else break;
        }
    }
 
    cout << s << endl;
    cout << ans << endl;
}

C. Bitwise Operation Wizard

题意:

难得补交互。。。

现在有一组长度为n的p隐藏序列,为0到n-1的排列组合,我们的目的是找到两个索引使 p i p_i pi^ p j p_j pj最大化。

我们可以进行的询问为:选择任意a, b, c, d四个下标元素进行查询;

每次查询可以得到一个字符:表示(pa | pb) 与 (pc | pd) 的大小关系。

最多可以进行3*n次询问,在有限次数内找出最大异或对的两个下标。

思路:

  • 首先进行(n - 1)次查询,每次选择的四个下标,a=b, c=d,则可以判断两个元素的大小关系,遍历完所有元素则可以找到最大元素的下标mx;
  • 然后考虑如何通过询问,得到异或最大元素:
    • 对每个p元素进行询问,通过查询与mx进行或运算,找出可以通过与mx进行或运算所能得最大元素的下标;
    • 注意,查询可能出现重复的或运算结果,此时再进行比较大小的查询选择较小的元素。

AC code:

void solve() {
    cin >> n;
    int mx = 0;
    for (int i = 1; i < n; i ++) {
        cout << '?' << " " << mx << " " << mx << " " << i << " " << i << endl;
        cout.flush();
        char pos; cin >> pos;
        if (pos == '<') mx = i;
    }
    if (n == 2) {
        cout << "! 0 1" << endl;
        cout.flush();
        return;
    }
    int mn = 0;
    for (int i = 1; i < n; i ++) {
        cout << '?' << " " << mx << " " << mn << " " << mx << " " << i << endl;
        cout.flush();
        char pos; cin >> pos;
        if (pos == '<') mn = i;
        if (pos == '=') {
            cout << '?' << " " << mn << " " << mn << " " << i << " " << i << endl;
            cout.flush();
            char pos1; cin >> pos1;
            if (pos1 == '>') mn = i;
        }
    }
    cout << '!' << " " << mx << " " << mn << endl;
    cout.flush();
}

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

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

相关文章

智慧城市:打造宜居环境,引领未来可持续发展

随着科技的不断进步与创新&#xff0c;我们的城市正步入一个崭新的时代——智慧城市。智慧城市是指运用信息技术和大数据等现代科技手段&#xff0c;对城市基础设施、公共服务和社会管理进行智能化改造&#xff0c;实现城市各领域的智能化、信息化和高效化。今天&#xff0c;就…

.net 日志

一、Log4net 1、log4net写入文本 1、nuget引入log4net、Microsoft.Extensions.Logging.Log4Net.AspNetCore这2个 2、引入配置文件,可以直接去官网(log4net官网配置文件)复制下来,放到项目目录下面,设置成始终复制,因为这个文件最终要到我们项目运行目录下面去 3、要在pr…

NLP(一)——概述

参考书: 《speech and language processing》《统计自然语言处理》 宗成庆 语言是思维的载体&#xff0c;自然语言处理相比其他信号较为特别 word2vec用到c语言 Question 预训练语言模型和其他模型的区别? 预训练模型是指在大规模数据上进行预训练的模型&#xff0c;通常…

redis的基本数据类型(一)

redis的基本数据类型 1、redis1.1、数据库分类1.2、NoSQL分类1.3、redis简介1.4、redis应用1.5、如何学习redis 2、redis的安装2.1、Windows安装2.2.1、客户端redis管理工具 2.2、Linux安装&#x1f525;2.2.1、redis核心文件2.2.2、启动方式2.2.3、redis桌面客户端1、redis命令…

transformer--编码器2(前馈全连接层、规范化层、子层链接结构、编码器层、编码器)

前馈全连接层 什么是前馈全连接层: 在Transformer中前馈全连接层就是具有两层线性层的全连接网络 前馈全连接层的作用: 考虑注意力机制可能对复杂过程的拟合程度不够,通过增加两层网络来增强模型的能力 code # 前馈全连接层 class PositionwiseFeedForward(nn.Module):de…

LNMP架构(搭建论坛+博客)

目录 一、LNMP架构概述 1、LNMP架构的概念 2、LNMP架构的优点 二、编译安装nginx软件 1、准备工作 1.1 关闭防火墙 1.2 安装依赖包 1.3 创建运行nginx用户 1.4 压缩包解压 2、编译与安装 3、添加nginx自启动文件 三、编译安装mysql软件 1、准备工作 1.1 安装mysq…

HTTPS的加密过程

文章目录 前言一、为什么需要加密&#xff1f;二、只用对称加密可以吗&#xff1f;三、只使用非对称加密四、双方都使用非对称加密五、使用非对称加密对称加密六、引入证书1.如何放防止数字证书被篡改&#xff1f;2.中间人有可能篡改该证书吗&#xff1f;3.中间人有可能掉包该证…

环境配置 |Jupyter lab/Jupyter Notebook 安装与设置

ipynb使用Jupyterlab/Jupyter Notebook 来编写Python程序时的文件,在使用时,可以现转换为标准的.py的python文件 1.Jupyter Lab 1.1.下载安装 环境&#xff1a;Linux pip install jupyterlab 1.2.使用 jupyter lab 点击后进入 1.3.jupyter lab更换内核 因为我的是在anac…

arm板运行程序时寻找动态库的路径设置

问题&#xff1a;error while loading shared libraries: libQt5Widgets.so.5: cannot open shared object file&#xff1f; 第一种方法---- 解决&#xff1a; ①复制需要用到的arm库到板子上。 ②pwd指令获取该库的绝对路径&#xff0c;把路径复制到/etc/ld.so.conf文件 ③输…

google最新大语言模型gemma本地化部署

Gemma是google推出的新一代大语言模型&#xff0c;构建目标是本地化、开源、高性能。 与同类大语言模型对比&#xff0c;它不仅对硬件的依赖更小&#xff0c;性能却更高。关键是完全开源&#xff0c;使得对模型在具有行业特性的场景中&#xff0c;有了高度定制的能力。 Gemma模…

网络传输基本流程(封装,解包)+图解(同层直接通信的证明),报头分离问题,协议定位问题,协议多路复用

目录 网络传输基本流程 引入 封装 过程梳理 图解 报文 解包 过程梳理 图解 -- 同层直接通信的证明 总结 解包时的报头分离问题 举例 -- 倒水 介绍 自底向上传输时的协议定位问题 介绍 解决方法 协议多路复用 介绍 优势 网络传输基本流程 引入 首先,我们明确…

Python学习 --- 面向对象

1.什么是对象 1.Python中创建类的关键字是 class 2.类的成员方法 1.函数是写在类外面的,方法则是写在类里面的 1.上面这一段代码中就展示了如何在方法中访问类的成员变量: self.成员变量名 3.魔术方法 魔术方法其实就是python中的类中的内置方法,下面这几个只是我们比较常…

02| JVM堆中垃圾回收的大致过程

如果一直在创建对象&#xff0c;堆中年轻代中Eden区会逐渐放满&#xff0c;如果Eden放满&#xff0c;会触发minor GC回收&#xff0c;创建对象的时GC Roots&#xff0c;如果存在于里面的对象&#xff0c;则被视为非垃圾对象&#xff0c;不会被此次gc回收&#xff0c;就会被移入…

深度神经网络联结主义的本质

一、介绍 在新兴的人工智能 (AI) 领域&#xff0c;深度神经网络 (DNN) 是一项里程碑式的成就&#xff0c;突破了机器学习、模式识别和认知模拟的界限。这一技术奇迹的核心是一个与认知科学本身一样古老的思想&#xff1a;联结主义。本文深入探讨了联结主义的基本原理&#xff0…

阿里云启动实例进入了急救模式解决办法

相关文档 问题描述 通过远程连接软件无法登录Linux实例&#xff0c;通过使用管理终端连接Linux实例远程连接时&#xff0c;发现系统进入到急救模式&#xff08;emergency mode&#xff09;&#xff0c;且出现报错。 CentOS实例报如下错误。 systemctl default to try again…

小(2)型土石坝安全监测设施配置详解

小(2)型土石坝的安全监测是确保大坝稳定、安全运行的重要环节。为此&#xff0c;合理配置安全监测设施显得尤为重要。以下是对小(2)型土石坝安全监测设施配置的详细介绍。 一、渗流量监测 渗流量是反映大坝安全状况的关键指标之一。为准确监测渗流量&#xff0c;我们采用仪器量…

PackagingTool_x64_v2.0.1.0图片转档打包二进制文件合并字库生成图片软件介绍

继去年12月份发布的打包软件PackagingTool v1.4.0.2之后&#xff0c;今年再度投入精力&#xff0c;完善了软件功能&#xff0c;同时开发了几个更加实用的工具&#xff0c;可助力UI界面的设计开发。当前最新版本为PackagingTool_x64_v2.0.1.0&#xff0c;该版本主界面如下&#…

php基础学习之错误处理(其二)

在实际应用中&#xff0c;开发者当然不希望把自己开发的程序的错误暴露给用户&#xff0c;一方面会动摇客户对己方的信心&#xff0c;另一方面容易被攻击者抓住漏洞实施攻击&#xff0c;同时开发者本身需要及时收集错误&#xff0c;因此需要合理的设置错误显示与记录错误日志 一…

全国夜间灯光指数数据、GDP密度分布、人口密度分布、土地利用数据、降雨量数据

引言 DMSP/OLS的1992-2013年全球遥感影像&#xff0c;包括三种非辐射定标的夜间灯光影像。三种全年平均影像分别是&#xff1a;无云观测频数影像、平均灯光影像和稳定灯光影像。目前地理遥感生态网可提供全国稳定灯光影像免费下载。稳定灯光影像是标定夜间平均灯光强度的年度栅…

java 大学生社团管理系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java 大学生社团管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5…