Codeforces Round 883 (Div. 3)

A. Rudolph and Cut the Rope

只需要按照钉子距离的高度 a i a_{i} ai和绳子的长度 b i b_{i} bi的差值进行排序即可

代码

int n;
pii a[N];
bool cmp(pii a,pii b)
{return a.x-a.y<b.x-b.y;
}void solve()
{cin>>n;for(int i=1;i<=n;i++)cin>>a[i].x>>a[i].y;sort(a+1,a+1+n,cmp);reverse(a+1,a+1+n);int res=0;for(int i=1;i<=n;i++){if(a[i].x<=a[i].y){break;}res++;}cout<<res<<endl;
}

B. Rudolph and Tic-Tac-Toe

模拟即可

代码

void solve()
{int n=3;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)cin>>s[i][j];for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(s[i][j]==s[i][j+1]&&s[i][j+1]==s[i][j+2]&&s[i][j]!='.'){cout<<s[i][j]<<endl;return;}if(s[i][j]==s[i+1][j]&&s[i+1][j]==s[i+2][j]&&s[i][j]!='.'){cout<<s[i][j]<<endl;return;}if(s[i][j]==s[i+1][j+1]&&s[i+1][j+1]==s[i+2][j+2]&&s[i][j]!='.'){cout<<s[i][j]<<endl;return;}if(s[i][j]==s[i+1][j-1]&&s[i+1][j-1]==s[i+2][j-2]&&s[i][j]!='.'){cout<<s[i][j]<<endl;return;}}}cout<<"DRAW"<<endl;
}

C. Rudolf and the Another Competition

统计出每个人的过题的数量 x i x_{i} xi和罚时 t i t_{i} ti然后依次先对比过题数然后再对比罚时即可

void solve()
{cin>>n>>m>>t;vector<pii>p(n+10);int res=0;for(int i=0;i<n;i++){p[i].x=p[i].y=0;vector<int>a;int s=0;for(int j=0;j<m;j++){int x;cin>>x;a.push_back(x);}sort(a.begin(),a.end());for(int j=0;j<m;j++){s=s+a[j];if(s<=t){p[i].x+=1;p[i].y+=s;}	}if(i>0){if((p[0].x<p[i].x)||(p[0].x==p[i].x&&p[i].y<p[0].y))res++;}}cout<<res+1<<endl;}

D. Rudolph and Christmas Tree

先统计所有三角形的面积,然后减去重叠部分即可,重叠部分可以根据初中学过的相似三角形定理对应边成比例即可

void solve()
{cin>>n>>d>>h;for(int i=1;i<=n;i++)cin>>y[i];sort(y+1,y+1+n);double s=n*d*h*0.5;for(int i=2;i<=n;i++){int v=h+y[i-1];if(v>y[i]){double x=v-y[i]*1.0;double t=x/h*d*x*0.5;s-=t;}}printf("%f\n",s);
}

E2. Rudolf and Snowflakes (hard version)

根据样例中的图解

img

节点个数假设为 n n n

n = 1 + 4 1 + 4 2 = 21 n=1+4^1+4^{2}=21 n=1+41+42=21

我们假设他有 k k k个子节点,会扩展 x x x次那我们可以推出一个方程

n = 1 + k + k 2 + . . . . + k x n=1+k+k^{2}+....+k^{x} n=1+k+k2+....+kx

所以只要将 n n n分解成多项式即可

我们可以看出这个具有单调性,所以可以利用二分来快速求得答案

先枚举指数 x ∈ [ 2 , 60 ] x\in[2,60] x[2,60] 然后再二分 k k k即可

void solve()
{cin>>n;for(int i=2;i<=60;i++){int l=1,r=n+1;auto check=[&](int x){int s=0,t=1;for(int j=0;j<=i;j++){s+=t;if(s>inf)s=inf;if((__int128_t)t*x>inf)t=inf;else t*=x;}return s;};while(l+1<r){int mid=l+r>>1;if(check(mid)>=n)r=mid;else l=mid;}if(check(r)==n){cout<<"YES"<<endl;return;}}cout<<"NO"<<endl;return;
}int mid=l+r>>1;if(check(mid)>=n)r=mid;else l=mid;}if(check(r)==n){cout<<"YES"<<endl;return;}}cout<<"NO"<<endl;return;
}

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

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

相关文章

【Linux】oh-my-zsh终端配置

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍oh-my-zsh终端配置。 学其所用&#xff0c;用其所学。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c;下次更新不迷路&am…

深度学习不同数据增广方法的选用分析

一般情况下&#xff0c;可以将数据扩增方法分为单数据变形、多数据混合、学习数据分布规律生成新数据和学习增广策略等4 类方法。以上顺序也在一定程度上反映了数据增广方法的发展历程。如果与Shorten和Khoshgoftaar的成果对照&#xff0c;就图像数据而言&#xff0c;基于数据变…

CTFHub XSS DOM反射 WriteUp

前言&#xff1a;本文需要注册一个xss平台&#xff0c;以接收xss反弹回来的数据&#xff0c;请自己在互联网上寻找合适的xss平台 1. 构造闭合语句 根据题目提示&#xff0c;判断网站存在DOM xss漏洞 查看页面源代码&#xff0c;发现关键位置&#xff0c;其中CTFHub is very n…

用android studio 测试发行包

在google play 发行app&#xff0c;需要用bundle&#xff0c;而不是apk。 bundle 比apk 要小很多&#xff0c;比如我的app-release.aab 29,736 KB&#xff0c; 而app-release.apk 是62,305KB。这就是少了一半多。但是apk 直接复制就可以安装&#xff0c;bundle 需要上传google…

实例解释在lingo中使用集合模型

某部门有三个生产同一产品的工厂&#xff08;产地&#xff09;&#xff0c;生产的产品运往四个销售点&#xff08;销地&#xff09;出售&#xff0c;各个工厂的生产量、各销地的销量&#xff08;单位&#xff1a;吨&#xff09;、从各个工厂到各个销售点的单位运价&#xff08;…

【若依】框架搭建,前端向后端如何发送请求,验证码的实现,开启注册功能

若依框架 若依框架&#xff08;Ruoyi&#xff09;是一款基于Spring Boot和Spring Cloud的开源快速开发平台。它提供了一系列的基础功能和通用组件&#xff0c;能够帮助开发者快速构建企业级应用。若依框架采用了模块化的设计理念&#xff0c;用户可以选择需要的功能模块进行集…

ChatGPT炒股:批量自动提取股票公告中的表格并合并数据

首先&#xff0c;在ChatGPT中输入提示词&#xff1a; 写一段Python代码&#xff1a; F盘文件夹“新三板 2023年日常性关联交易20230704”中很多个PDF文件&#xff0c;用 Tabula提取这些PDF文件中第1页中的第2个表格&#xff0c;然后保存到表格文件中&#xff0c;文件标题名和…

springboot+echarts+mysql制作数据可视化大屏(滑动大屏)

作者水平低&#xff0c;如有错误&#xff0c;恳请指正&#xff01;谢谢&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 项目简单&#xff0c;适合大学生参考 分类专栏还有其它的可视化博客哦&#xff01; 专栏地址&#xff1a;https://blog.csdn.net/qq_559…

基于多案例系统学习防洪评价报告编制方法与水流数学模型建模(HECRAS、MIKE、EFDC、Delft3D、FVCOM、SWAT、SWMM等模型应用)

目录 ​专题一 《防洪评价报告编制导则解读河道管理范围内建设项目编制导则》&#xff08;SL/T808- 2021&#xff09;解读编制导则解读 专题二 防洪评价相关制度与解析 ★专题三 案例演练解析 专题四 防洪评价地形获取及常用计算实践 专题五 HEC-RAS软件原理及应用案例解析…

Redis 事务

是什么 官网&#xff1a;https://redis.io/docs/interact/transactions/ 可以一次执行多个命令&#xff0c;本质是一组命令的集合。一个事务中的所有命令都会序列化&#xff0c;按顺序地串行化执行而不会被其它命令插入&#xff0c;不许加塞。 能干嘛 一个队列中&#xff0c;…

springboot医院挂号小程序

医院挂号系统 springboot医院挂号系统小程序 java医院挂号小程序 技术&#xff1a; 基于springbootvue小程序医院挂号系统的设计与实现 运行环境&#xff1a; JAVA版本&#xff1a;JDK1.8 IDE类型&#xff1a;IDEA、Eclipse都可运行 数据库类型&#xff1a;MySql&#xff08;…

1.计算机是如何工作的(下)

文章目录 4.编程语言&#xff08;Program Language&#xff09;4.1程序&#xff08;Program&#xff09;4.2早期编程4.3编程语言发展 5.操作系统&#xff08;Operating System&#xff09;5.1操作系统的定位5.2什么是进程/任务&#xff08;Process/Task&#xff09;5.3进程控制…