23.3.4打卡 AtCoder Beginner Contest 291(Sponsored by TOYOTA SYSTEMS)A~E

news2025/1/16 11:03:07

F题题面都看不懂嘞!开摆!
没找到合适的markdown, 截图网页翻译了我真是天才
比赛链接:
https://atcoder.jp/contests/abc291

A题

题意

给出一个字符串, 找到第一个大写字母的下标
题面
简单题就不多说了, 直接放代码

代码

void solve()
{
    cin>>str;
    n=str.size();
    str=" "+str;
    rep(i,1,n)
    {
        if(str[i]<='Z')
        {
            cout<<i<<endl;
            return;
        }
    }
    return;
}

B题

题意

给出n*5个裁判, 去掉n个最高分和n个最低分, 剩下的全加起来求平均数, 精度要求 1 0 − 5 10^{-5} 105
网页翻译发癫说此网站不支持翻译麻了没图了

题解

我用优先队列pop了n次然后读取了前3*n个

代码

void solve()
{
    cin>>n;
    priority_queue<ll>q;   
    rep(i,1,n*5)
    {
        R ant;
        q.push(ant);
    }
    rep(i,1,n) q.pop();
    cnt=n*3;
    ans=0;
    rep(i,1,cnt)
    {
        ans+=q.top();
        q.pop();
    }
    double a=1.0*ans/cnt;
    printf("%.10lf\n",a);

    return;
}

C题

题意

给出一个字符串只包含UDLR模拟前后左右, 从0,0开始走, 问是否会走之前走过的点
题面

题解

用map储存pair类型查重即可

代码

void solve()
{
    cin>>n>>str;
    str=" "+str;
    ll x,y;
    x=y=0;
    map<pair<ll,ll>,ll>mp;
    mp[{0,0}]++;
    rep(i,1,n)
    {
        auto v=str[i];
        if(v=='R') x++;
        if(v=='L') x--;
        if(v=='U') y++;
        if(v=='D') y--;
        if(mp.count({x,y}))
        {
            yes
            return;
        }
        mp[{x,y}]++;
    }
    no
    return;
}

D题

题面

有N张卡片排成一排, 正反面各有一个数字, 初始卡牌全部为正面, 卡牌可以随意翻面, 问有多少种方式使得在正面的卡牌数字不同题面

题解

组合数学想了贼久, 然后发现其实是个dp
需要考虑四种情况

与上一个同面元素是否相同
与上一个异面元素是否相同

如果是相同的情况, 那么当前这个卡牌必须翻面(也就是无法转移状态)
然后其他情况都能专题状态, 写个2维dp就好了

代码

void solve()
{
    cin>>n;
    vector<ll>a(n+1),b(n+1);
    rep(i,1,n) R a[i]>>b[i];
    f[1][0]=f[1][1]=1;
    rep(i,2,n)
    {
        if(a[i]!=a[i-1]) f[i][0]=(f[i-1][0]+f[i][0])%mod; 
        if(a[i]!=b[i-1]) f[i][0]=(f[i-1][1]+f[i][0])%mod; 
        if(b[i]!=b[i-1]) f[i][1]=(f[i-1][1]+f[i][1])%mod; 
        if(b[i]!=a[i-1]) f[i][1]=(f[i-1][0]+f[i][1])%mod; 
    }
    cout<<(f[n][0]+f[n][1])%mod<<endl;
    return;
}

E题

题意

现在有一个打乱顺序的排列A, 1~n, 给出m个x和y
x和y的含义是 A X i < A Y i A_{Xi}<A_{Yi} AXi<AYi
按1~n的顺序输出 原本排列在A排列中的位置
题面

题解

按照样例1画个图先
在这里插入图片描述
是不是很像一个图, xy就是y通向x有向边
如此建一个图
存下每个边的终点, 找出图的起点
如果没有终点的点>=2说明这个图不合法直接输出no完事
然后遍历一遍图, 记录下顺序就好了, 注意重边感谢样例3的重边提醒我, 不然铁wa

代码


void solve()
{
    cin>>n>>m;
    rep(i,1,m)
    {
        ll x,y;
        cin>>x>>y;
        g[x].push_back(y);
        to[y]++;
        
    }

    queue<ll>q;
    vector<ll>ans(n+1);

    rep(i,1,n)
        if(to[i]==0) q.push(i);

    ll pos=0;

    while(q.size())
    {
        if(q.size()>=2) 
        {
            no
            return;
        }

        ll tp=q.front();
        q.pop();
        ans[tp]=++pos;

        for(auto it:g[tp])
        {
            to[it]--;
            if(to[it]==0) q.push(it);
        }
    }
    yes
    rep(i,1,n) cout<<ans[i]<<' ';
    return;
}

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

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

相关文章

CentOS7操作系统安装nginx实战(多种方法,超详细)

文章目录前言一. 实验环境二. 使用yum安装nginx2.1 添加yum源2.1.1 使用官网提供的源地址&#xff08;方法一&#xff09;2.1.2 使用epel的方式进行安装&#xff08;方法二&#xff09;2.2 开始安装nginx2.3 启动并进行测试2.4 其他的一些用法&#xff1a;三. 编译方式安装ngin…

Kali、Metasploitable2部署

1、安装VMWare虚拟机及metasploitable2软件 链接&#xff1a;https://pan.baidu.com/s/1rqhjh1P9VJg5Q1esBgpZ-A 提取码&#xff1a;dc66 metasploitable2部署很简单&#xff0c;解压后&#xff0c;直接双击后缀.vmx文件&#xff0c;默认账户msfadmin/msfadmin&#xff0c;sud…

php实训报告

实训一 PHP语法基础 一、实训目的 掌握PHP数据类型知识。掌握PHP变量与常量的知识和运用方法。掌握PHP选择结构流程控制的知识及应用。掌握PHP循环结构流程控制的知识及应用。 二、实训工具或设备 主流 PC 机一台&#xff08;要求安装 windows 操作系统&#xff09;&#xff…

基于m-p条件查询代码生成

目录 起因 演示 使用 0.自定义注解 1.定义一个dto的条件查询类 2.调用主程序 效果图 小结 代码 注解 Dto类 完整代码 起因 最近两天一直写后台管理统计的增删改查(很少写增删改查&#xff0c;所以不是很熟练)&#xff0c;几乎每个表都要涉及到条件查询的业务&#xf…

7个常用的原生JS数组方法

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 7个常用的原生JS数组方法一、Array.map()二、Array.filter三、Array.reduce四、Array.forEach五、Array.find六、Array.every七、Array.some总结一、Array.map() 作用&#…

Transformer 模型:入门详解(1)

动动发财的小手&#xff0c;点个赞吧&#xff01; 简介 众所周知&#xff0c;transformer 架构是自然语言处理 (NLP) 领域的一项突破。它克服了 seq-to-seq 模型&#xff08;如 RNN 等&#xff09;无法捕获文本中的长期依赖性的局限性。事实证明&#xff0c;transformer 架构是…

【数据结构初阶】详解“树”

目录 前言 1.树概念及结构 &#xff08;1&#xff09;树的概念 &#xff08;2&#xff09;树的名词介绍 &#xff08;3&#xff09;树的表示 ​编辑 2.二叉树概念及结构 &#xff08;1&#xff09;概念 &#xff08;2&#xff09;特殊的二叉树 &#xff08;3&#xff0…

sizeof与strlen练习

前言 本篇仅仅是为了更加了解sizeof操作符和strlen函数练习. 对于多条sizeof操作符和strlen函数出现,可能很容易造成头脑不清晰,做题时容易混乱. 目录前言一维数组字符数组情况1:情况2情况3二维数组练习之前请牢记下面这段话.这将是头脑清晰地关键. 提示: sizeof(数组名)&#…

MyBatis高频面试专题

一、介绍下MyBatis中的工作原理 1。介绍MyBatis的基本情况&#xff1a;ORM 2。原理&#xff1a; MyBatis框架的初始化操作处理SQL请求的流程 1.系统启动的时候会加载解析全局配置文件和对应映射文件。加载解析的相关信息存储在 Configuration 对象 Testpublic void test1(…

【ID:17】【20分】A. DS顺序表--类实现

时间限制1秒内存限制128兆字节题目描述用C语言和类实现顺序表属性包括&#xff1a;数组、实际长度、最大长度&#xff08;设定为1000&#xff09;操作包括&#xff1a;创建、插入、删除、查找类定义参考输入第1行先输入n表示有n个数据&#xff0c;即n是实际长度;接着输入n个数据…

HCIE-Cloud Computing LAB备考第二步:逐题攻破--第三题:迁移

迁移 题目 将一台AD服务器迁移到FusionCompute平台,并保障业务正常。 思维导图 markmap内容1 文字介绍 准备Rainbow服务器:在Windows系统安装Rainbow,必须保证其与源端主机、目的端平台互通。关闭防火墙。【首次登录rainbow时,需要注册用户名和密码,考试时根据考题要…

989. 数组形式的整数加法

989. 数组形式的整数加法https://leetcode.cn/problems/add-to-array-form-of-integer/ 难度简单226 整数的 数组形式 num 是按照从左到右的顺序表示其数字的数组。 例如&#xff0c;对于 num 1321 &#xff0c;数组形式是 [1,3,2,1] 。 给定 num &#xff0c;整数的 数组…

【Linux】进程等待 | 详解 wait/waitpid 的 status 参数

&#x1f923; 爆笑教程 &#x1f449; 《看表情包学Linux》&#x1f448; 猛戳订阅 &#x1f525; &#x1f4ad; 写在前面&#xff1a;在上一章中我们讲解了进程创建与进程终止&#xff0c;本章我们开始讲解进程等待。进程等待这部分知识相较于前面还是较为复杂的&#xff0…

Vue2的生命周期(详解)

Vue的生命周期一、生命周期的概念二、钩子函数三、Vue2的生命周期3.1 初始化阶段3.2 挂载阶段3.3 更新阶段3.4 销毁阶段一、生命周期的概念 Vue实例的生命周期: 从创建到销毁的整个过程 二、钩子函数 Vue框架内置函数,随着组件的生命周期阶段,自动执行 作用:特定的时间点,执行特…

Unity Lighting -- 向场景中添加光源

本节笔记来实践向场景中添加光源。 除了平行光源外&#xff0c;还有两种常用的光源&#xff1a; 点光源&#xff08;Point Lights&#xff09;&#xff1a;点光源所发出的光是朝四面八方发散的&#xff0c;我们可以用点光源来模拟灯泡之类的发光物体。 聚光灯源&#xff08;Spo…

python每日学9 : windows上配置gitee的远程仓库,git的初步使用

在开发中&#xff0c;如果遇到复杂的项目&#xff0c;使用版本控制是非常有必要的&#xff0c;如果涉及到多端开发&#xff0c;那么还需要使用远程仓库。本文作个简单记录&#xff0c;记录下git初步使用。 1 下载与安装 git还有几个ui版本&#xff0c;但是开始使用的话&#…

【LeetCode】带环链表两道题

第一题&#xff1a;环形链表 问题介绍 给你一个链表的头节点head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪next指针再次到达&#xff0c;则链表中存在环。为了表示给定链表中的环&#xff0c;评测系统内部使用整数pos 来表示链表…

【Storm】【三】Storm 核心概念详解

Storm 核心概念详解 一、Storm核心概念1.1 Topologies&#xff08;拓扑&#xff09;1.2 Streams&#xff08;流&#xff09;1.3 Spouts1.4 Bolts1.5 Stream groupings&#xff08;分组策略&#xff09;二、Storm架构详解2.1 nimbus进程2.2 supervisor进程2.3 zookeeper的作用2.…

【蒸滴C】C语言结构体入门?看这一篇就够了

目录 一、结构体的定义 二、结构的声明 例子 三、 结构成员的类型 结构体变量的定义和初始化 1.声明类型的同时定义变量p1 2.直接定义结构体变量p2 3.初始化&#xff1a;定义变量的同时赋初值。 4.结构体变量的定义放在结构体的声明之后 5.结构体嵌套初始化 6.结构体…

24节气-惊蛰 // 诗句、海报分享,春风至,惊雷动。

惊蛰&#xff0c;古称"启蛰"&#xff0c;是二十四节气中的第3个节气&#xff0c;更是干支历卯月的起始;时间点在公历3月5-6日之间&#xff0c;太阳到达黄经345时。《月令七十二候集解》:"二月节……万物出乎震&#xff0c;震为雷&#xff0c;故曰惊蛰&#xff0…