牛客周赛 Round 4

news2024/12/29 8:48:07

A 游游的字符串构造

在这里插入图片描述

思路分析

构造字符串,注意k>=1

时间复杂度

O(n)

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,k;
    cin>>n>>k;
    if(n>=3*k){
    for(int i=0;i<k;i++)cout<<"you";
    for(int i=0;i<n-3*k;i++)cout<<'y';
    }else cout<<-1<<endl;
    return 0;
}

B 游游的整数拆分

在这里插入图片描述在这里插入图片描述

思路分析

只要a,b中出现了3的倍数就一定满足要求。

  • 当n为3的倍数时,因为a,b为正整数,不能为0。所以要(n-1)
    在这里插入图片描述

在这里插入图片描述

时间复杂度

O(1)

AC代码:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
    ll ans=0;
    ll n;
    cin>>n;
    if(n%3!=0)ans=n/3*2;
    else ans=(n-1)/3;
    cout<<ans<<endl;
    return 0;
}

C 游游的整数操作

在这里插入图片描述在这里插入图片描述

思路分析

设minsum为累加过程中 sum 的最小值。若 ai+minsum<0, 则 minsum 一定出现在 ai最后一次变为 0 的位置.因为minsum就是最小sum,若还有更小则会更新。

  • k 次操作后, 若 ai+minsum>=0,ai一直大于0,则有 ai=a[i]+sum。
  • 若 ai+minsum<0,则中间有ai小于0,找到 在 ai最后一次变为 0 的位置minsum,有 ai=sum−minsum。(因为只需找到ai最后一次变为 0 之后的所有大于0的sum,从0开始累加的值(sum -minsum))

时间复杂度

O(n+m)

AC代码

#include <bits/stdc++.h>
#define int long long
const int N = 1e5 + 10,mod = 1e9 + 7;
using namespace std;
using LL = long long;
 
signed main() {
    cin.tie(0)->ios::sync_with_stdio(0);
    cout.tie(0);
 
    int n,m;
    cin >> n >> k;
 
    vector<int> a(n + 1);
    for(int i = 1; i <= n; i++) cin >> a[i];
 
    int sum = 0, minsum = 1e18;
    while(k --){
        int op, x;
        cin >> op >> x;
        if(op == 2) x = -x;
        sum += x;
        minsum = min(minsum, sum);
    }
    
    int ans = 0;
    for(int i = 1; i <= n; i++){
        if(a[i] + minsum >= 0) ans += sum + a[i];
        else ans += a[i]+sum -(a[i]+minsum); 
        ans %= mod;
    }
    
    cout << ans << '\n';
}

D 游游的因子计算

在这里插入图片描述

思路分析

为了找到ab的所有因子,可以分别求出a和b的所有因子,然后将它们的乘积作为ab的因子。首先,我们可以用一个循环遍历从1到sqrt(a)的所有正整数,找出a的因子,并将其加入到一个集合X中。同样地,也可以找出b的因子并加入到集合Y中。之后,遍历集合X中的每一个元素v,与集合Y中的每一个元素u相乘得到vu,将其加入到一个集合set中。去重

时间复杂度

O(sqrt(a) + sqrt(b))

AC代码

#include <iostream>
#include <vector>
#include <set>

using namespace std;

void solve() {
    long long x, y;
    cin >> x >> y;
    vector<long long> X, Y;
    for (long long i = 1; i * i <= x; i++) {
        if (x % i == 0) {
            X.push_back(i);
            if (i * i != x) X.push_back(x / i);
        }
    }
    for (long long i = 1; i * i <= y; i++) {
        if (y % i == 0) {
            Y.push_back(i);
            if (i * i != y) Y.push_back(y / i);
        }
    }
    set<long long> s;
    for (auto v : X) {
        for (auto u : Y) {
            s.insert(v * u);
        }
    }
    cout << s.size() << '\n';
    for (auto v : s) cout << v << " ";
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    while (t--) 
        solve();
    return 0;
}

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

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

相关文章

工作纪实34-emoji表情包存储异常,修改db的字段类型

线上问题&#xff0c;发现emojo表情写入数据库出现异常 修改mysql字段的字符集 ALTER TABLE customer_cycle_info MODIFY COLUMN customer_sales_remark varchar(500) CHARACTER SET

已实现商业化却仍陷亏损泥潭,瑕瑜错陈的觅瑞集团求上市

撰稿|行星 来源|贝多财经 7月25日&#xff0c;Mirxes Holding Company Limited-B&#xff08;以下简称“觅瑞集团”&#xff09;向港交所递交上市申请材料&#xff0c;计划在港交所主板上市&#xff0c;中金公司和建银国际为其联席保荐人。 据招股书介绍&#xff0c;成立于2…

0基础系列C++教程 从0开始 第二课

0基础系列C教程 从0开始 第二课来了&#xff01; 复习第一课内容 1 怎么输出数字“1919810”&#xff1f; 答案&#xff08;关键语句&#xff09;: cout<<"1919810"; 2 怎么输出字符串“Hello World”&#xff1f; 答案&#xff08;关键语句&#xff09;&a…

MySQL案例——多表查询以及嵌套查询

系列文章目录 MySQL笔记——表的修改查询相关的命令操作 MySQL笔记——MySQL数据库介绍以及在Linux里面安装MySQL数据库&#xff0c;对MySQL数据库的简单操作&#xff0c;MySQL的外接应用程序使用说明 文章目录 系列文章目录 前言 一 创建数据库 1.1 创建一个部门表 1.…

7.24 C++

封装Vector #include <iostream> #include <cstring> using namespace std;template <typename T> class Vector { private:T *start; //指向容器的起始地址T *last; //指向容器存放数据的下一个位置T *end; //指向容器的最后的下一个位置 public:Vec…

MyBatis-入门-快速入门程序

本次使用MyBatis框架是基于SpringBoot框架进行的&#xff0c;在IDEA中创建一个SpringBBot工程&#xff0c;根据自己的需求选择对应的依赖即可 快速入门 需求&#xff1a;使用MyBatis查询所有用户数据步骤&#xff1a; 准备工作&#xff08;创建Spring Boot工程、数据库user表…

【MATLAB】ILOSpsi制导率的代码解析

ILOSpsi制导率的代码解析 这里记录一下关于fossen的MMS工具箱中&#xff0c;关于ILOSpsi制导率的代码解析内容&#xff0c;结合fossen的marine carft hydrodynamics and motion control这本书来参考看 文章目录 ILOSpsi制导率的代码解析前言一、代码全文二、内容解析1.persist…

静态代理、jdk、cglib动态代理 搞不清? 看这个文章就懂了

一、代理模式 代理模式是一种比较好的理解的设计模式。简单来说就是 &#xff1a; 我们使用代理对象来增强目标对象(target obiect)&#xff0c;这样就可以在不修改原目标对象的前提下&#xff0c;提供额外的功能操作&#xff0c;扩展目标对象的功能。将核心业务代码和非核心…

linux下i2c调试神器i2c-tools安装及使用

i2c-tools介绍 在嵌入式linux开发中&#xff0c;有时候需要确认i2c硬件是否正常连接&#xff0c;设备是否正常工作&#xff0c;设备的地址是多少等等&#xff0c;这里我们就需要使用一个用于测试I2C总线的工具——i2c-tools。 i2c-tools是一个专门调试i2c的开源工具&#xff…

Linux查看内存的几种方法

PS的拼接方法 ps aux|head -1;ps aux|grep -v PID|sort -rn -k 4|head 进程的 status 比如说你要查看的进程pid是33123 cat /proc/33123/status VmRSS: 表示占用的物理内存 top PID&#xff1a;进程的ID USER&#xff1a;进程所有者 PR&#xff1a;进程的优先级别&#x…

503、415、403、404报错

1、503 报错 Service Unvailable 解决&#xff1a;如果你用的是网关gateway&#xff0c;观察下你的项目是否导入了nacos依赖。 2、415 报错 Unsupported Media Type post传对象的时候&#xff0c;这样就会报错 解决&#xff1a;axios传对象的时候&#xff0c;用这种就可以了。…

阿里内部都在疯传!企业级 Spring Boot 项目开发实战教程,先肝为敬

前言 本书结合大量的实际开发经验&#xff0c;由浅入深地讲解 Spring Boot 的技术原理和企业级应用开发涉及的的技术及其完整流程。无论是对 Java 企业级开发人员&#xff0c;还是 对其他相关技术爱好者&#xff0c;本书都极具参考价值。 本书特点 理论知识结合实践代码&#…

专项练习-04编程语言-03JAVA-05

1. 设有下面两个类的定义&#xff1a; class Person {} class Student extends Person { public int id; //学号 public int score; //总分 public String name; // 姓名 public int getScore(){return score;} } 类Person和类Student的关系是&#xff08;&#x…

vue2中开发时通过template中的div等标签自动输出对应的less形式带层级的class,只显示带class的

1.写完静态不是要写less吗&#xff0c;自动生成一下实现 this.getLevelClass(domId); domId是自定义的class名称&#xff0c;跟根据自己的需要设置 //vue2中开发时通过template中的div等标签自动输出对应的less形式带层级的class,只显示带class的getLevelClass(name) {let dom…

Python基础语法第七章之文件

目录 一、文件 1.1文件是什么 1.2文件路径 1.3文件操作 1.3.1 打开文件 1.3.2关闭文件 1.3.3写文件 1.3.4读文件 二、使用上下文管理器 2.1上下文管理器 一、文件 1.1文件是什么 变量是把数据保存到内存中. 如果程序重启/主机重启, 内存中的数据就会丢失. 要想能让…

Excel 两列数据中相同的数据进行同行显示

一、要求 假设您有两个列&#xff0c;分别是A列和B列&#xff0c;需要在C列中找出A列对应的B列的值。 二、方案 方法1&#xff1a;寻常思路 凸显重复项对A列单独进行筛选–按颜色进行排序&#xff0c;然后升序对B列重复上述操作即可 方法2&#xff1a;两个公式 VLOOKUP 纵向查找…

【分享帖】LCD的MCU接口和SPI接口详解

LCD&#xff08;Liquid Crystal Display&#xff09;液晶屏&#xff0c;作为电子产品的重要组成部分&#xff0c;是终端用户与电子产品交互的重要载体。现在市场上的LCD&#xff0c;按照尺寸、功能、接口、用途等分为很多种&#xff0c;本文主要介绍如下两种LCD物理接口&#x…

tinymce插件tinymce-powerpaste-plugin——将word中内容(文字图片等)直接粘贴至tinymce编辑器中

TinyMCE是一款易用、且功能强大的所见即所得的富文本编辑器。同类程序有&#xff1a;UEditor、Kindeditor、Simditor、CKEditor、wangEditor、Suneditor、froala等等。 TinyMCE的优势&#xff1a; 开源可商用&#xff0c;基于LGPL2.1 插件丰富&#xff0c;自带插件基本涵盖日常…

Cesium态势标绘专题-直线箭头(标绘+编辑)

标绘专题介绍:态势标绘专题介绍_总要学点什么的博客-CSDN博客 入口文件:Cesium态势标绘专题-入口_总要学点什么的博客-CSDN博客 辅助文件:Cesium态势标绘专题-辅助文件_总要学点什么的博客-CSDN博客 本专题没有废话,只有代码,代码中涉及到的引入文件方法,从上面三个链…

网络安全大厂面试题

自我介绍 有没有挖过src&#xff1f; 平时web渗透怎么学的&#xff0c;有实战吗&#xff1f;有过成功发现漏洞的经历吗&#xff1f; 做web渗透时接触过哪些工具 xxe漏洞是什么&#xff1f;ssrf是什么&#xff1f; 打ctf的时候负责什么方向的题 为什么要搞信息安全&#xff0c;对…