Codeforces Round 479 (Div. 3)

这一场div3整体比较简单注意细节即可

目录

A. Wrong Subtraction

B. Two-gram

C. Less or Equal

D. Divide by three, multiply by two

E. Cyclic Components

F. Consecutive Subsequence


A. Wrong Subtraction

按照题目意思直接模拟操作次数即可

void solve(){cin>>n>>m;while(m--){int t=n%10;if(t) n--;else n/=10;}cout<<n<<endl;return ;
}

B. Two-gram

按照字符串也是直接模拟即可

void solve(){map<string,int> mp;cin>>n;string s; cin>>s;string ans=" ";for(int i=1;i<n;i++){string now;now+=s[i-1];now+=s[i];mp[now]++;if(mp[now]>mp[ans]){ans=now;}}cout<<ans<<endl;return ;
}

C. Less or Equal

我们可以发现答案是具有二分性质的如果一个数越大少于他的数只会变多所以考虑二分即可

void solve(){cin>>n>>m;vector<int> a(n);for(auto&v:a) cin>>v;sort(a.begin(),a.end());auto check = [&](int x){int cnt=0;for(auto&v:a) cnt+=v<=x;return cnt;};int l=1,r=1e9;while(l<r){int mid=l+r+1>>1;if(check(mid)<=m) l=mid;else r=mid-1;}cout<<(check(l)==m ? l : -1)<<endl;return ;
}

D. Divide by three, multiply by two

每一个数的前后数一定是一一对应的所以可以直接记录,然后我们考虑求倒着用下一位记录前一位这样就可以直接倒推(同时注意开longlong)

void solve(){cin>>n;vector<LL> a(n);map<LL,LL> cnt,pre;for(auto&v:a){cin>>v;cnt[v]++;}LL last;for(auto&v:a){if(cnt.count(2*v)) pre[2*v]=v;else if(v%3==0 && cnt.count(v/3))pre[v/3]=v;else last=v;}vector<LL> ans;ans.push_back(last);while(pre.count(last)){last=pre[last];ans.push_back(last);}reverse(ans.begin(),ans.end());for(auto&v:ans) cout<<v<<' ';cout<<endl;return ;
}

E. Cyclic Components

我们发现一个环上的一定都是每个点都是有两个子节点,这就是这题的性质然后dfs即可

bitset<N> st;
bool ok;
void dfs(int u){st[u]=true;if(g[u].size()!=2) ok=false;for(auto&v:g[u]){if(!st[v])dfs(v); }
}void solve(){cin>>n>>m;while(m--){int a,b; cin>>a>>b;g[a].push_back(b);g[b].push_back(a);}int ans=0;for(int i=1;i<=n;i++){if(!st[i]){ok=true;dfs(i);ans+=ok;}}cout<<ans<<endl;return ;
}

F. Consecutive Subsequence

这一题是一个简单的dp记录方案我们考虑直接用map来存储,用pre表示上一个节点,idx当前位置,dp表示数量即可表示所有的信息从前完后的去找每一个数的x-1是否存在是一定合理的

void solve(){cin>>n;vector<int> a(n+5);map<int,int> dp,pre,idx;for(int i=1;i<=n;i++) cin>>a[i];int pos=1;for(int i=1;i<=n;i++){dp[a[i]]=1;idx[a[i]]=i;if(dp.count(a[i]-1)){pre[i]=idx[a[i]-1];dp[a[i]]=dp[a[i]-1]+1;if(dp[a[i]]>dp[a[pos]]) pos=i;}}vector<int> ans;ans.push_back(pos);while(pre[pos]!=0){ans.push_back(pre[pos]);pos=pre[pos];}cout<<ans.size()<<endl;reverse(ans.begin(),ans.end());for(auto&v:ans) cout<<v<<' ';cout<<endl;return ;
}

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

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

相关文章

05 MyBatis之表关系的声明+事务+SqlSession三件套的作用域

MyBatis 支持一对一&#xff0c;一对多&#xff0c;多对多查询。XML 文件和注解都能实现关系的操作。多对多实质就是一对多 1. 表关系的维护 1.1 One一对一 一对一查询和多表(两表)查询很相似, 都能查询两表的全部属性 区别是一对一可以在对象中嵌套对象, 呈现包含关系; 多表…

行为型设计模式—迭代器模式

迭代器模式&#xff1a;也叫作游标模式&#xff0c;能在不暴露复杂数据结构内部细节的情况下遍历其中所有的元素。在迭代器的帮助下&#xff0c; 客户端可以用一个迭代器接口以相似的方式遍历不同集合中的元素。 当集合背后为复杂的数据结构&#xff0c;且希望对客户端隐藏其复…

Qt扩展-muParser数学公式解析

muParser数学公式解析 一、概述1. 针对速度进行了优化2. 支持的运算符3. 支持的函数4. 用户定义的常量5. 用户定义的变量6. 自定义值识别回调7. 其他功能 二、内置函数三、内置二元运算符四、三元运算符五、内置常量六、源码引入1. 源码文件2. 编译器开关1. MUP_BASETYPE2.MUP_…

【中关村开源生态论坛暨大模型智能应用技术大会】—— 探索AI和开源在未来的应用

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-9ttR7rpX3BzyF2C4 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

阿赵UE学习笔记——13、贴花

阿赵UE学习笔记目录 大家好&#xff0c;我是阿赵。   继续学习虚幻引擎的使用。这次介绍一种特殊的材质类型&#xff0c;贴花。 一、获取贴花资源 在没有分析贴花的原理之前&#xff0c;可以先去获得一些免费的贴花资源来使用&#xff0c;比如在Quixel上面就有专门的一个资源…

【QT+QGIS跨平台编译】之十七:【iconv+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

文章目录 一、iconv介绍二、文件下载三、文件分析四、pro文件五、编译实践一、iconv介绍 iconv是一个用于字符编码转换的开源程序。它可以将一个字符集的文本转换为另一个字符集,例如将UTF-8编码的文本转换为GBK编码。 iconv的主要特点包括: 支持多种字符集:iconv支持多种…

初识C语言·文件操作

目录 1 关于文件 i)文件的基本知识 ii)数据文件的分类 2 文件打开和关闭 i)流和标准流 ii)文件指针 iii)文件打开和关闭 3 文件的顺序读写 i) fgetc fputc ii) fgets fputs iii) fscanf fprintf iv) fwrite fread 4 对比一组函数 scanf/fscanf/sscanf/printf/fpri…

C 语言学习五:函数与程序结构

函数与程序结构 函数的声明与定义函数的声明函数的定义函数重载内联函数递归函数构造函数lambda 函数 函数的参数形参和实参值传递和引用传递默认参数 函数的返回返回多个值返回引用返回指针返回对象 头文件内部函数和外部函数内部函数外部函数 函数的声明与定义 函数的声明 …

VMware虚拟机安装macOS

VMware虚拟机安装macOS 文章目录 VMware虚拟机安装macOS先看效果一、准备工作①&#xff1a;镜像资源下载②&#xff1a;虚拟机③&#xff1a;安装macOS所必要的插件 二、开始安装①&#xff1a;创建新的虚拟机②&#xff1a;自定义硬件③&#xff1a;开启虚拟机 先看效果 一、…

新东方财报解读:新一轮增长逻辑或蕴于电商业务?

从财报表现来看&#xff0c;教育市场的元气在持续提升。 近日&#xff0c;新东方、好未来等上市公司陆续公布了2023年9-11月的业绩表现。其中&#xff0c;好未来实现营收3.7亿美元&#xff0c;同比增长60.5%&#xff1b;归母净亏损2394.6万美元&#xff0c;亏幅同比收窄53.6%。…

Linux命令之 vim 详解

所有的 Unix Like 系统都会内建 vi 文书编辑器&#xff0c;其他的文书编辑器则不一定会存在。 但是目前我们使用比较多的是 vim 编辑器。 vim 具有程序编辑的能力&#xff0c;可以主动的以字体颜色辨别语法的正确性&#xff0c;方便程序设计。 安装vim编辑器 yum install vi…

Redis常见数据类型[上]

目录 前言&#xff1a; 基本全局命令 KEYS EXISTS DEL EXPIRE TTL TYPE 数据结构和内部编码 内部编码&#xff1a; 单线程架构 引出单线程模型&#xff1a; 为什么单线程还这么快&#xff1f; String字符串 字符串数据类型&#xff1a; 常见命令&#xff1a; S…

sql题之使用划分会话的方式解决统计间隔连续登录问题

现有各用户的登录记录表&#xff08;login_events&#xff09;如下&#xff0c;表中每行数据表达的信息是一个用户何时登录了平台。 user_idlogin_datetime1002021-12-01 19:00:001002021-12-01 19:30:001002021-12-02 21:01:00 现要求统计各用户最长的连续登录天数&#xff0…

嵌入式学习第十五天!(内存管理、链表)

1. 内存管理&#xff1a; 1. malloc void *malloc(size_t size); 功能&#xff1a;申请堆区空间 参数&#xff1a;size&#xff1a;申请堆区空间的大小 返回值&#xff1a;返回获得的空间的首地址&#xff0c;失败返回NULL 2. free void free(void *ptr); 功能&#xff1a;释…

volatile 关键字的用法说明

volatile字面翻译为不稳定的&#xff0c;易变的。 一般编译器优化时&#xff0c;如果一个数据已经读取进寄存器&#xff0c;后续会优先从寄存器中取值来减少访问存储时间&#xff0c;但如果此数值会随时变动&#xff0c;结果就会出现错误 以下测试 #include <stdio.h> i…

信效度检验2(SPSS

目录 1.效度介绍&#xff1a;2.效度检验&#xff1a;小结&#xff1a; 1.效度介绍&#xff1a; 用于研究题项设计是否合适 2.效度检验&#xff1a; 点击 降维->因子 把涉及到因变量的问题放入即可&#xff1a; 勾选&#xff1a; 得到输出结果&#xff1a; KMO值 0.7…

C语言实战三:图书管理系统

这个图书管理系统包括了添加、查找、删除、编辑、显示和保存书籍信息的功能。书籍信息被保存在一个文本文件中&#xff0c;在程序启动时从文件中加载&#xff0c;退出程序时保存到文件中。用户可以通过命令行界面操作图书管理系统&#xff0c;并进行相应的功能操作。 一、代码…

pg数据库替换指定ip

pg数据库替换指定ip 配菜单是部署机ip发生变化&#xff0c;记录一下处理方法,先根据源ip查询出主键id&#xff0c;在将源ip替换成目标ip updatesys_menu sethref replace(href, 10.116.63.4, 10.116.58.23) whereid in(select*fromsys_menuwherehref like %10.116.58.23% )

信息学奥赛一本通1931:【05NOIP普及组】校门外的树

1931&#xff1a;【05NOIP普及组】校门外的树 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 9210 通过数: 6928 【题目描述】 某校大门外长度为L的马路上有一排树&#xff0c;每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴&#xff0c;马路的一…

24校招,快手测试开发工程师二面

前言 大家好&#xff0c;我是chowley&#xff0c;今天回顾一下&#xff0c;之前参加快手的校招面试 全程没有测试方向问题&#xff0c;一直拷打编程语言特性和数据底层结构 时间&#xff1a;50min 平台&#xff1a;轻雀&#xff08;请勿切屏&#xff09; 过程 自我介绍用…