牛客小白月赛104(未补)

A 小红购买装备

题意:给定n件装备,每种装备提供ai的攻击和bi的防御,价格为ci,小红已有t的金币和攻击x,防御为y的装备,卖给商店可以回收z金币,最大攻击+防御是多少

分析:枚举即可

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
void sol(){ll n,x,y,z,t;cin>>n>>x>>y>>z>>t;ll ans=x+y;ll a,b,c;for(int i=1;i<=n;i++){cin>>a>>b>>c;if(a+b>ans&&c<=z+t){ans=max(ans,a+b);}}cout<<ans<<endl;
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int t=1;while(t--)sol();return 0;
}
​

B 小红招募英雄

题意:给定1,2,3,4,5的概率,抽十次,求有4或5两次及以上的概率

分析:用1减去45只出现1次的情况,再减去45都没出现的情况

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
void sol(){double a[10];for(int i=1;i<=5;i++)cin>>a[i];double p0=a[1]+a[2]+a[3],p1=a[4]+a[5];printf("%.10f\n",1-10*p1*(pow(p0,9))-pow(p0,10));
​
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int t=1;while(t--)sol();return 0;
}
​

C 小红打怪

题意:给定n个怪物,每个回合:所有怪物减一;任选1只减一;对相邻怪物都减一

分析:用二分找出符合条件的最小次数。找符合条件的只要贪心找出每次施法即可。

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+10;
ll a[N],b[N],ma=0,mi=1e9,sum,n;
ll f(ll x){for(int i=1;i<=n;i++)a[i]=b[i];for(int i=1;i<=n;i++){a[i]-=x;if(a[i]<0)a[i]=0;}ll x1=x,x2=x;for(int i=1;i<=n;i++){if(a[i+1]!=0&&a[i]!=0){if(a[i+1]>a[i]){if(x1-a[i]<0){a[i+1]-=x1;a[i]-=x1;x1=0;break;}else{x1-=a[i];a[i+1]-=a[i];a[i]=0;if(x1==0)break;}}else{if(x1-a[i+1]<0){a[i+1]-=x1;a[i]-=x1;x1=0;break;}else{x1-=a[i+1];a[i]-=a[i+1];a[i+1]=0;if(x1==0)break;}   }}}for(int i=1;i<=n;i++){if(a[i]>0){if(x2-a[i]<0){a[i]-=x2;x2=0;}else{x2-=a[i];a[i]=0;}}}ll k=0;for(int i=1;i<=n;i++){k+=a[i];}if(k==0)return 1;else{if(k<=x2+x1)return 1;else return 0;}
}
void sol(){cin>>n;for(int i=1;i<=n;i++)cin>>b[i];ll l=1,r=1e9;while(l<r){ll mid=(l+r)/2;if(f(mid)==1)r=mid;else l=mid+1;}cout<<l<<endl;
​
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int t=1;while(t--)sol();return 0;
}
​

D 小红开锁

题意:给定n层锁,每次可以选择一层锁按顺时针移动一个格子,想让某个象限全是X,这个锁最少操作几次可以解开?

分析:用vector存入每一层的字符。共有四种情况,分别是第一二三四象限,判断连续X的最右边的位置,判断到每一个象限的距离,取四个象限的最小值

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+10;
void sol(){int n;cin>>n;char a[300][300];ll k1=0,k2=0,k3=0,k4=0;vector<char>v[2*n];for(int i=1;i<=n*2;i++){for(int j=1;j<=n*2;j++){cin>>a[i][j];}}for(int i=1;i<=n*2;i++){//横 for(int j=i;j<=2*n-i+1;j++){v[i].push_back(a[i][j]);} }for(int i=1;i<=2*n;i++){//右 for(int j=i+1;j<=2*n-i+1;j++){if(2*n-i+1<=2*n&&2*n-i+1>=1&&j<=2*n&&j>=1)v[i].push_back(a[j][2*n-i+1]);}}for(int i=1;i<=2*n;i++){//横 for(int j=i+1;j<=2*n-i+1;j++){if(2*n-i+1>=1&&2*n-j+1>=1&&2*n-i+1<=2*n&&2*n-j+1<=2*n)v[i].push_back(a[2*n-i+1][2*n-j+1]);}}for(int i=1;i<=2*n;i++){//左 for(int j=i+1;j<=2*n-i;j++){if(2*n-j+1>=1&&2*n-j+1<=2*n&&i>=1&&i<=2*n){v[i].push_back(a[2*n-j+1][i]);}}}for(int i=1;i<=n;i++){ll len=v[i].size();ll p=-1;int l=0;for(int j=0;j<len;j++){if(v[i][j]=='X'&&(p==-1||j-1==-1||(v[i][j-1]=='X'&&l==0))){p=j;}if(v[i][j]=='X'&&v[i][j+1]=='O')l=1;} if(len/4/2<p)k1+=len-p+len/4/2;else k1+=len/4/2-p;if(len/4/2+len/4<p)k2+=len-p+len/4/2+len/4;else k2+=len/4/2+len/4-p;if(len/4/2+len/4+len/4<p)k3+=len-p+len/4/2+len/4+len/4;else k3+=len/4/2+len/4+len/4-p;if(len/4/2+len/4+len/4+len/4<p)k4+=len-p+len/4/2+len/4+len/4+len/4;else k4+=len/4/2+len/4+len/4+len/4-p;}cout<<min(min(k1,k2),min(k3,k4))<<endl;
​
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int t=1;while(t--)sol();return 0;
}
​

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

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

相关文章

数据冒险-dadd,sub和and

从图中的流水线执行情况来看&#xff0c;我们可以分析指令之间的依赖关系。图中每条指令对应的执行阶段标注为 IF (取指令)&#xff0c;ID (指令译码)&#xff0c;EX (执行)&#xff0c;Mem (访存)&#xff0c;和 WB (写回)。以下是对每条指令依赖情况的分析&#xff1a; 第一条…

如何修改WordPress经典编辑器的默认高度?

boke112百科有一个使用WordPress搭建的小网站&#xff0c;文章内容就是几个字不到一行&#xff0c;但是每次使用经典编辑器编辑文章时&#xff0c;都觉得编辑器默认高度太高了&#xff0c;影响了我添加文章摘要和其他属性&#xff0c;有没有办法修改WordPress经典编辑器的默认高…

量化研究--年化57%全球动量模型策略回测,学习使用

文章声明:本内容为个人的业余研究&#xff0c;和任何单位&#xff0c;机构没有关系&#xff0c;文章出现的股票代码&#xff0c;全部只是测试例子&#xff0c;不做投资参考&#xff0c;投资有风险&#xff0c;代码学习使用&#xff0c;不做商业用途 本文利用全球动量模型策略回…

【JavaEE初阶 — 多线程】Thread类的方法&线程生命周期

目录 1. start() (1) start() 的性质 (2) start() 和 Thread类 的关系 2. 终止一个线程 (1)通过共享的标记结束线程 1. 通过共享的标记结束线程 2. 关于 lamda 表达式的“变量捕获” (2) 调用interrupt()方法 1. isInterrupted() 2. currentThread() …

Linux驱动开发(3):字符设备驱动

上一章节我们了解到什么是内核模块&#xff0c;模块的加载卸载详细过程以及内核模块的使用等内容。 本章&#xff0c;我们将学习驱动相关的概念&#xff0c;理解字符设备驱动程序的基本框架&#xff0c;并从源码上分析字符设备驱动实现和管理。 主要内容有如下五点&#xff1a;…

布谷直播源码部署服务器关于数据库配置的详细说明

布谷直播源码搭建部署配置接口数据库 /public/db.php&#xff08;2019年8月后的系统在该路径下配置数据库&#xff0c;老版本继续走下面的操作&#xff09; 在项目代码中执行命令安装依赖库&#xff08;⚠️注意&#xff1a;如果已经有了vendor内的依赖文件的就不用执行了&am…

【Linux】从零开始使用多路转接IO --- 理解EPOLL的 LT水平触发模式 与 ET边缘触发模式

当你偶尔发现语言变得无力时&#xff0c; 不妨安静下来&#xff0c; 让沉默替你发声。 --- 里则林 --- 从零开始认识多路转接 1 EPOLL优缺点2 EPOLL工作模式 1 EPOLL优缺点 poll 的优点(和 select 的缺点对应) 接口使用方便&#xff1a;虽然拆分成了三个函数&#xff0c;…

云轴科技ZStack助力新远科技开启化工行业智能制造新篇章

新远科技基于云轴科技ZStack Cube超融合和ZStack Zaku容器云平台打造了灵活高效的IT基础设施&#xff0c;实现了IaaS和PaaS层的全面覆盖&#xff0c;优化了资源利用率&#xff0c;降低了硬件成本和运维复杂性&#xff0c;同时强化了数据安全和业务连续性。 化工行业的数字化先…

认识类和对象

认识类 类是用来对一个实体 ( 对象 ) 来进行描述的&#xff0c;主要描述该实体(对象)具有哪些属性(外观尺寸等)&#xff0c;哪些功能(用来干啥) 类中包含的内容称为 类的成员。属性主要是用来描述类的&#xff0c;称之为 类的成员属性或者 类成员变量。方法主要说明类具有哪些功…

npm镜像的常用操作

查看当前配置的 npm 镜像 npm config get registry切换官方镜像 npm config set registry https://registry.npmjs.org/切换淘宝镜像(推荐) npm config set registry https://registry.npmmirror.com/切换腾讯云镜像 npm config set registry http://mirrors.cloud.tencent…

网购选择困难症怎么破?别忘了你的这位“帮手”

每年双十一对不少人来说&#xff0c;既是购物剁手狂欢节&#xff0c;也是货比三家纠结得不行的选择困难症复发期。而现在&#xff0c;Pura 70 能够帮助我们解决不够了解商品、选择困难症等问题啦。 小艺圈选&#xff0c;圈出你感兴趣的商品&#xff0c;快速货比三家 利用指关…

175页PPTBCG某企业健康智能制造与供应链战略规划建议书

智能制造与供应链战略规划方法论是一个系统性、科学性的框架&#xff0c;旨在指导企业实现智能制造转型和供应链优化。以下是对这一方法论的核心内容的归纳和阐述&#xff1a; 一、智能制造的目标与原则 明确智能制造目标&#xff1a; 提高生产效率&#xff1a;通过引入自动…

【VS+QT】联合开发踩坑记录

最新更新日期&#xff1a;2024/11/05 0. 写在前面 因为目前在做自动化产线集成软件开发相关的工作&#xff0c;需要用到QT&#xff0c;所以选择了VS联合开发&#xff0c;方便调试。学习QT的过程中也踩了很多坑&#xff0c;在此记录一下&#xff0c;提供给各位参考。 1. 环境配…

flutter 专题四 Flutter渲染流程

一、 Widget - Element - RenderObject关系 二、 Widget 、Element 、RenderObject 分别表示什么 2.1 Widget Widget描述和配置子树的样子 Widget就是一个个描述文件&#xff0c;这些描述文件在我们进行状态改变时会不断的build。但是对于渲染对象来说&#xff0c;只会使用最…

芯片需要按一下keyup或者复位按键虚拟或者下载之后芯片能下载却运行不了或者需要额外供电。

这些问题很有可能是因为外围电路器件幅值与设计不同的存在&#xff0c;导致你需要外部供电才能实现一个正常运行&#xff0c;可以检查一下外围电路在供电区域的电流区&#xff0c;电阻幅值是否和原理图设计时看的一模一样或者直接更换 因为按键会失灵&#xff0c;首先检查复位按…

React基础大全

文章目录 一、React基本介绍1.虚拟DOM优化1.1 原生JS渲染页面1.2 React渲染页面 2.需要提前掌握的JS知识 二、入门1.React基本使用2.创建DOM的两种方式2.1 使用js创建&#xff08;一般不用&#xff09;2.2 使用jsx创建 3.React JSX3.1 JSX常见语法规则3.2 for循环渲染数据 4.模…

leetcode 2043.简易银行系统

1.题目要求: 示例: 输入&#xff1a; ["Bank", "withdraw", "transfer", "deposit", "transfer", "withdraw"] [[[10, 100, 20, 50, 30]], [3, 10], [5, 1, 20], [5, 20], [3, 4, 15], [10, 50]] 输出&#xff…

【网络】网络层协议IP

目录 IP协议报头 报头分离和向上交付 四位版本 8位服务类型 16位总长度 八位生存时间 16位标识一行 网段划分 DHCP 私有IP范围 公网划分之CIDR 特殊的IP地址 缓解IP地址不够用的方法 NAT技术 代理服务器 NAT和代理服务器的区别 内网穿透和内网打洞 路由 IP是…

Qt菜单功能实现

本文介绍Qt菜单功能实现。 Qt开发过程中&#xff0c;菜单功能用的还是比较多的&#xff0c;本文针对菜单栏和右键菜单功能实现作简要描述。 1.菜单栏 1)界面设计 在界面中添加菜单栏&#xff08;本例中名为“menubar”&#xff09;&#xff0c;并依次添加需要的菜单&#x…

2024 网鼎杯 - 青龙组 Web WP

2024 网鼎杯 - 青龙组 WEB - 02 打开容器一个登录界面&#xff0c;随便输入账号密码可以进到漏洞界面 这里有一个发送给boss的功能&#xff0c;一眼xss 有三个接口&#xff1a;/flag 、/update 、/submit /flag &#xff1a;要求boss才能访问&#xff0c;/update &#xf…