Codeforces Round 883 (Div. 3)(集训队加训1)

A.如果钉子与地面距离大于绳子的长度就必须剪

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N],b[N],cl[N];
void Lan(){int n;cin>>n;for(int i=1;i<=n;i++){cin>>a[i]>>b[i];}ll ans=0;for(int i=1;i<=n;i++){if(a[i]>b[i]){ans++;}}cout<<ans<<'\n';
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int q;cin>>q;while (q--) {Lan();}return 0;
}

B.

暴力枚举横竖2个斜

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e3 + 9;
char a[N][N];
void Lan(){for(int i=3;i<=5;i++){for(int j=3;j<=5;j++){cin>>a[i][j];}}for(int i=3;i<=5;i++){for(int j=3;j<=5;j++){if(a[i][j]=='.'){continue;}if(a[i][j]==a[i+1][j+1] && a[i][j]==a[i+2][j+2]){cout<<a[i][j]<<'\n';return;}		if(a[i][j]==a[i+1][j] && a[i][j]==a[i+2][j]){cout<<a[i][j]<<'\n';return;}if(a[i][j]==a[i][j+1] && a[i][j]==a[i][j+2]){cout<<a[i][j]<<'\n';return;}if(a[i][j]==a[i-1][j+1] && a[i][j]==a[i-2][j+2]){cout<<a[i][j]<<'\n';return;}}}cout<<"DRAW"<<'\n';
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int q;cin>>q;while (q--) {Lan();}return 0;
}

C.

贪心一下,然后结构体排序即可

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e5 + 9;
ll t[N],prefix[N];
struct node{ll score,t,index;
}a[N];
bool cmp(node a,node b){return (a.score==b.score?(a.t==b.t?a.index<b.index:a.t<b.t):a.score>b.score);//排序
}
void Lan(){int n,m,h;cin>>n>>m>>h;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>t[j];}sort(t+1,t+1+m);//在矩阵中每行排序for(int j=1;j<=m;j++){prefix[j]=prefix[j-1]+t[j];//前缀和}ll res=0;int k;for(k=1;k<=m;k++){if(prefix[k]>h){break;}res+=prefix[k];}a[i].score=k,a[i].t=res,a[i].index=i;//存储}sort(a+1,a+1+n,cmp);for(int i=1;i<=n;i++){//找index==1if(a[i].index==1){cout<<i<<'\n';return;}}
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int q;cin>>q;while (q--) {Lan();}return 0;
}

D.

先算不重叠的,再用相似三角形算重合面积

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long double ld;
const int N = 2e5 + 9;
int a[N],diff[N];
void Lan(){ld n,d,h;cin>>n>>d>>h;for(int i=1;i<=n;i++){cin>>a[i];}ld ans=n*d*h/2;for(int i=1;i<=n-1;i++){if(a[i]+h>a[i+1]){diff[i]=a[i]+h-a[i+1];}else{diff[i]=0;}}for(int i=1;i<=n-1;i++){//diff[i]/x=h/d->x*h=d*diff[i];->x=d*diff[i]/hif(diff[i]){ans-=(d*diff[i]/h)*(diff[i])/2;}}cout<<fixed<<setprecision(6)<<ans<<'\n';
}
int main() {ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);int q;cin>>q;while (q--) {Lan();}return 0;
}

E1-E2.

暴力枚举1e6,后面最多到k*k二分即可

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N];
set<ll> st;
void Lan(){ll n;cin>>n;if(st.count(n)){cout<<"YES"<<'\n';}else{ll x=sqrt(n);if(x>1 && x*(x+1)==n-1){cout<<"YES"<<'\n';}else{cout<<"NO"<<'\n';}}
}
void init(){for(ll i=2;i<=1e6;i++){ll x=1+i+i*i;ll y=i*i;st.insert(x);while(1){if(1.0*y>1.0*1e18/i){break;}y*=i;x+=y;if(x>1e18){break;}st.insert(x);}}
}
int main(){ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);init();int q;cin>>q;while (q--) {Lan();}return 0;
}

F.

思路好想的交互,但是写很shi

#include<bits/stdc++.h>
#define eps 1e-5
#define INF 1e9
using namespace std;
typedef long long ll;
const int N = 2e6 + 9;
int a[N],c[N],fzc[N];
/*变了就删去不是这个数字的等下一次变把不是这个数字的发送即可不能固定等第2次是否变如果第一次变了不变了第三次变了第四次不变就会wa*/
void Lan(){int n;cin>>n;for(int i=1;i<=9;i++){//初始化!c[i]=0;fzc[i]=0;}for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){//记录现在的数字种类以及数量c[a[i]]++;}cout<<"-"<<" "<<0<<endl;//第一次for(int i=1;i<=n;i++){cin>>a[i];}int keynum=0;//找多的,从少的变到多的for(int i=1;i<=n;i++){fzc[a[i]]++;}for(int i=1;i<=9;i++){if(fzc[i]>c[i]){keynum=i;break;}}if(!keynum){for(int i=1;i<=9;i++){fzc[i]=0;}cout<<'-'<<" "<<0<<endl;//必然要换了	for(int i=1;i<=n;i++){cin>>a[i];	}for(int i=1;i<=n;i++){fzc[a[i]]++;}for(int i=1;i<=9;i++){if(fzc[i]>c[i]){keynum=i;break;}}}vector<int> del;//可以删去的数字for(int i=1;i<=n;i++){if(a[i]!=keynum){del.push_back(i);}}cout<<"-"<<" "<<(int)del.size()<<" ";for(auto &i : del){cout<<i<<" ";}cout<<endl;for(int i=1;i<=9;i++){//清空c[i]=0;fzc[i]=0;}//结束上述过程后数组其实只存在一个数字,因此等2轮找不是这个数字的index即可for(int i=1;i<=n-(int)del.size();i++){//得到数组只是接受一下回复信息cin>>a[i];}ll ansindex=0;for(int i=1;i<=n-(int)del.size();i++){if(a[i]!=keynum){ansindex=i;break;}}if(ansindex){cout<<"!"<<" "<<ansindex<<endl;return;}cout<<"-"<<" "<<0<<endl;//这轮结束后必然会有换的for(int i=1;i<=n-(int)del.size();i++){cin>>a[i];}for(int i=1;i<=n;i++){//找到对应indexif(a[i]!=keynum){ansindex=i;break;}}cout<<"!"<<" "<<ansindex<<endl;
}
int main() {// ios::sync_with_stdio(false);// cin.tie(0),cout.tie(0);int q;cin>>q;while (q--) {Lan();}return 0;
}

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

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

相关文章

如何提高项目成功率?分享20 种项目管理工具、技术和软件

本文将分享20种项目管理常用的工具、技术和软件&#xff0c;比如项目管理软件 PingCode、Worktile、Redmine、Jira、SAP、PrimaveraSystems等&#xff1b;项目计划阶段工具和技术WBS、甘特图、PERT图、风险评估矩阵等等。 项目管理是确保项目成功交付的关键&#xff0c;它涉及到…

Java学习笔记009——局部内部类(需配合接口使用)

局部内部类&#xff08;Local Inner Classes&#xff09;在Java中是一种非常有用的特性&#xff0c;尽管它们的使用场景相对较少。局部内部类定义在一个方法、构造器或代码块中&#xff0c;而不是在类的顶层。这样的设计有几个主要的意义&#xff1a; 1. 代码组织&#xff1a;…

【产品文档分类及撰写路径】

一、产品文档的分类 产品文档根据所处阶段和面相对象的差异大致可以分为三类&#xff1a; 商业需求文档 (BRD)&#xff1a;商业需求文档是面向公司高层和项目组&#xff0c;目的是为了获得资金、资源支持。市场需求文档 (MRD)&#xff1a;市场需求文档是面向运营和市场销售人员…

【重要!!退税!退税!】一年一度个人所得税综合年度汇算开始了!

目录标题 如何退税&#xff1f;2023年度个人所得税综合所得汇算清缴操作指南汇算准备标准申报 退税骗局&#xff1f;1.“您有一笔退税待领取”骗局2.“专业人员帮你多退税”骗局3.“诱导填报虚假个税信息”骗局4.“税务稽查人员联系你”骗局 如何退税&#xff1f; 2023年度个人…

2024年腾讯云优惠政策_腾讯云服务器特价购买活动入口

腾讯云优惠活动2024新春采购节活动上线&#xff0c;云服务器价格已经出来了&#xff0c;云服务器61元一年起&#xff0c;配置和价格基本上和上个月没什么变化&#xff0c;但是新增了8888元代金券和会员续费优惠&#xff0c;腾讯云百科txybk.com整理腾讯云最新优惠活动云服务器配…

网络编程作业day7

作业项目&#xff1a;基于UDP的聊天室 服务器代码&#xff1a; #include <myhead.h>//定义客户信息结构体 typedef struct magtye {char type; //消息类型char name[100]; //客户姓名char text[1024]; //客户发送聊天信息 }msg_t;//定义结构体存储…

类的关系 继承(Inheritance)、聚合(Aggregation)和关联(Association)

前言 在面向对象编程中&#xff0c;类之间的关系主要有以下几种&#xff1a;继承&#xff08;Inheritance&#xff09;、聚合&#xff08;Aggregation&#xff09;和关联&#xff08;Association&#xff09;。每种关系在对象的创建和销毁时&#xff0c;构造函数和析构函数的调…

刷题日记:面试经典 150 题 DAY5

刷题日记&#xff1a;面试经典 150 题 DAY4 125. 验证回文串28. 找出字符串中第一个匹配项的下标151. 反转字符串中的单词6. Z 字形变换68. 文本左右对齐 125. 验证回文串 原题链接 125. 验证回文串 双指针&#xff0c;一前一后&#xff0c;遇到非数字字母跳过即可 class So…

腾讯云哪款服务器最便宜划算?2024腾讯云服务器优惠价格表

腾讯云优惠活动2024新春采购节活动上线&#xff0c;云服务器价格已经出来了&#xff0c;云服务器61元一年起&#xff0c;配置和价格基本上和上个月没什么变化&#xff0c;但是新增了8888元代金券和会员续费优惠&#xff0c;腾讯云百科txybk.com整理腾讯云最新优惠活动云服务器配…

TCP三次握手四次挥手

目录 TCP报文 ☞ 标志位 TCP状态变迁图&#xff1a; 三次握手 为什么要三次握手&#xff1f; 客户端与服务端接口状态 客户端&#xff1a; 服务端&#xff1a; 第一次握手&#xff1a; 第二次握手&#xff1a; 第三次握手&#xff1a; 四次挥手&#xff1a; 四次挥…

火爆全网,软件测试数据库常用 SQL 语句总结,你要的我都有......

前言 直接上干货 数据定义语言(DDL) 主要负责数据库、数据表、视图、键、索引等结构化的操作 常用的语句有&#xff1a;CREATE DATABASE、CREATE TABLE、ALTER TABLE等 字段的常用约束有&#xff1a;PRIMARY KEY、FOREIGN KEY、NOT NULL、UNIQUE、AUTO_INCREMENT、DEFAULT 常…

onnx模型优化利器onnxoptimizer、onnxsim

ONNX性能优化和调试技巧 - 知乎ONNX模型是一种跨平台、跨框架的模型表示格式,允许用户在不同的深度学习框架之间共享模型和数据,从而加速模型开发和部署。然而,在实际应用中,我们通常需要对ONNX模型进行性能优化和调试,以确保其在不同硬件和…https://zhuanlan.zhihu.com/…

PTA L2-011 玩转二叉树

给定一棵二叉树的中序遍历和前序遍历&#xff0c;请你先将树做个镜面反转&#xff0c;再输出反转后的层序遍历的序列。所谓镜面反转&#xff0c;是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。 输入格式&#xff1a; 输入第一行给出一个正整数N&…

android 快速实现 圆角矩形控件 及 圆形控件

1.自定义RoundImageView package com.examle.widget;import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import an…

CIP通讯介绍(欧姆龙PLC)

什么是CIP CIP通信是Common Industrial Protocl(CIP)的简称&#xff0c;它是一个点到点的面向对象协议&#xff0c;能够实现工业器件&#xff08;传感器&#xff0c;执行器&#xff09;之间的连接&#xff0c;和高等级的控制器之间的连接。目前&#xff0c;有3种网络DeviceNet…

MySQL--优化(索引--索引创建原则)

MySQL–优化&#xff08;索引–索引创建原则&#xff09; 定位慢查询SQL执行计划索引 存储引擎索引底层数据结构聚簇和非聚簇索引索引创建原则索引失效场景 SQL优化经验 一、索引创建原则 我们使用的索引种类&#xff1a; 主键索引唯一索引根据业务创建的索引&#xff08;复…

怎么给视频活码加入时间设置?限时扫码看视频的制作方法

视频二维码是常见的一种二维码类型&#xff0c;很多人会通过这种方式来分享视频内容&#xff0c;可能某些情况下需要对制作的二维码图片加入扫码限制&#xff0c;比如有效期、填写密码、限制预览时间等设置&#xff0c;那么这些需求怎么在生成二维码时实现呢&#xff1f; 对于…

JAVA 用二分法查找数组中是否存在某个值

二分法查找的概念 二分查找也称折半查找&#xff08;Binary Search&#xff09;&#xff0c;它是一种效率较高的查找方法。首先&#xff0c;将表中间位置记录的关键字与查找关键字比较&#xff0c;如果两者相等&#xff0c;则查找成功&#xff1b;否则利用中间位置记录将表分成…

软考67-上午题-【面向对象技术2-UML】-UML简介

一、UML简介 1-1、UML的定义 UML——统一建模语言。 能够表达软件设计中的动态、静态信息。 交互图&#xff1a;表达动态信息&#xff1b; 静态图&#xff1a;表达静态信息。 1-2、UML由3个要素构成&#xff1a; UML的基本构造块&#xff1b;&#xff08;仅讨论此要素&…

spring-security 项目实战(一)个人健康档案

spring-security 项目实战&#xff08;一&#xff09;个人健康档案 项目说明项目地址框架信息 代码分析配置类解析默认登录页登录接口执行逻辑登录认证成功之后重定向到main页面过程未登录之前访问 /main生成默认登录页点击登录 登录之后访问 /main执行流程清空认证信息 项目来…