ZJNU 1422 - 碰撞的小球
完全弹性碰撞可以视作互相穿过
所以直接考虑只有单个小球的时候,从板子上滑下所需要的时间即可
最后以30000为界分开流读入与缓冲区优化的io方法
//Case4用缓冲区io优化会WA??
#pragma GCC optimize(3)
#include<iostream>
#include<algorithm>
#include<cctype>
using namespace std;
int pos[],dir[],ans[];
const int bsz=<<;
char bf[bsz],*head,*tail;
inline char gc()
{
if(head==tail)
{
int l=fread(bf,,bsz,stdin);
tail=(head=bf)+l;
}
return *head++;
}
inline int read()
{
int x=,f=;char c=gc();
for(;!isdigit(c);c=gc())
if(c=='-')
f=-;
for(;isdigit(c);c=gc())
x=x*+c-'';
return x*f;
}
inline void write(int x)
{
if(x>=)
write(x/);
putchar(x%+'');
}
int main()
{
ios::sync_with_stdio();
cin.tie();cout.tie();
int i,vd,nl,n,m,L;
cin>>n>>m>>L;
if(n>)
{
for(i=;i<n;i++)
pos[i]=read();
for(i=;i<n;i++)
dir[i]=read();
for(i=;i<n;i++)
{
vd=read();
if(dir[i])
nl=L+-pos[i];
else
nl=pos[i];
ans[i]=nl/vd+(nl%vd?:);
}
sort(ans,ans+n);
write(ans[n-m-]);
}
else
{
for(i=;i<n;i++)
cin>>pos[i];
for(i=;i<n;i++)
cin>>dir[i];
for(i=;i<n;i++)
{
cin>>vd;
if(dir[i])
nl=L+-pos[i];
else
nl=pos[i];
ans[i]=nl/vd+(nl%vd?:);
}
sort(ans,ans+n);
cout<<ans[n-m-];
} return ;
}
ZJNU 1422 - 碰撞的小球的更多相关文章
- 【web前端学习部落22群】分享 碰撞的小球开源小案例
对于课程中的疑问,大家可以加 web前端学习部落22群 120342833和其他老师还有众多的小伙伴们进行沟通交流哦,群里还有不少技术大拿.行业大牛 可以一起探讨问题,我们也会安排专业的技术老师为大家 ...
- 碰撞的小球 ccf (模拟)
问题描述 试题编号: 201803-2 试题名称: 碰撞的小球 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐 ...
- 【C++】CCFCSP201803-2碰撞的小球
// // main.cpp // CCFCSP20180318_2_碰撞的小球 // // Created by T.P on 2018/3/24. // Copyright © 2018年 T.P ...
- CCF CSP 201803-2 碰撞的小球
题目链接:http://118.190.20.162/view.page?gpid=T72 问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段 ...
- CCF-201803-2 碰撞的小球
问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒.当小球到达线段 ...
- CCF认证201803-2 碰撞的小球 java代码实现。
问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒. 当小球到达线 ...
- ccf 201803-2 碰撞的小球(Python)
问题描述 数轴上有一条长度为L(L为偶数)的线段,左端点在原点,右端点在坐标L处.有n个不计体积的小球在线段上,开始时所有的小球都处在偶数坐标上,速度方向向右,速度大小为1单位长度每秒. 当小球到达线 ...
- ccf碰撞的小球
之前的代码有人运行不成功,自己又看了一下是输入变量顺序输入错了,现在是正确答案- #include<stdio.h> struct node{ int x; int dir; }; int ...
- CCF|碰撞的小球
import java.util.Scanner; public class Main { public static void main (String[] args) { Scanner scan ...
随机推荐
- 关于c++静态类的说法
看了网上的观点,大致有这几种比较好的. 观点一:根据现代的C++观点,静态类没有必要存在于C++中. 一个类是对一个概念的描述,类的本质是它维护了一个不变式,也就是说它有一个状态,它所有的接口都是为了 ...
- MFC 实现CTreeCtrl单选
void CDepartmenManager::SetUncheck(HTREEITEM hTree) { if (!hTree){ return; } m_DePartmentView.SetChe ...
- Ubuntu 18.04 配置 adb
Reference1: https://www.jianshu.com/p/377c6fb6e590 Reference2: https://blog.csdn.net/ppggxn/articl ...
- BZOJ:1878: [SDOI2009]HH的项链
题解:解法一:莫队 解法二:按区间左端点排序,让区间内最左边的贝壳对答案产生贡献,树状数组维护,转移对答案产生贡献的贝壳位置 #include<iostream> #include< ...
- Mac Go 环境变量配置
GOPATH 是工作目录,就是你打代码,代码的存放目录 GOROOT 是Go的安装目录,我下载的是免安装版的 现在的Go环境变量就是设置成这个样子, 终于Bee不会报错了!!!
- 实验吧-密码学-js(Chrome用console.log调试js)
题目就是js,可能就是一个js的代码,查看源码并复制,在Chrome中打开网页,审查元素. 将复制的代码输入,将eval改成console.log,再回车执行,就得到一段js代码. 代码中有Unico ...
- 实验吧Web-难-头有点大(http头伪造:浏览器、国家、.Net framework版本)
进去网站显示: 此处告诉我们要干三件事: (1).net framework 版本为9.9 (2)告诉服务器我们的地址为英国 (3)我们访问站点用的是IE 下面我们就抓的包中伪造. 1:.net fr ...
- python刷LeetCode:26. 删除排序数组中的重复项
难度等级:简单 题目描述: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外 ...
- HALCON导出函数
Halcon小函数的封装和代码导出 一.Halcon小函数的封装和修改 1.名词解释: 算子:指Halcon中最基础.最底层的函数(即你看不到它的代码实现),一个算子只有一句话,例如threshold ...
- 数组 bash shell
http://www.cnblogs.com/chengmo/archive/2010/09/30/1839632.html #!/bin/bash # 脚本检测到离线主机会发送邮件通知,可一直运行. ...