“今日头条杯”首届湖北省大学程序设计竞赛(网络同步赛)B. Salty Fish Go!

本文主要是介绍“今日头条杯”首届湖北省大学程序设计竞赛(网络同步赛)B. Salty Fish Go!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述 

A few days ago, WRD was playing a small game called Salty Fish Go. We can simplify the rules of the game as follows.

The road can be abstracted into a one-dimensional axis, and the length of the road is L. There are two magic doors at the ends of the road, which can instantly transfer WRD from position L to position 0, or from location 0 to location L, without spending time.

WRD can select the initial position, the initial direction of movement, and the initial speed (from the speed set).

There are some amazing gas stations on the way, whose location is random. At the gas station WRD can change speed to one of the speed set, without spending time. (Do not change direction!)

There are some jewels on the road, whose location is random. WRD needs to take away all the jewels to win the game.

How long does it take WRD to win the game?

It’s an easy game. But considering that WRD has become a salty fish without brain, all his operations are completely random. Can you calculate the expected time for him to win the game?

输入描述:

 

Input contains multiple test cases, please process to the end of input.

For each test case, the first line of the input contains four positive integers V (), L (), n (), m () to indicate the size of speed set, the length of the road, the number of the gas stations, the number of the jewels.

Then, there are V integers in a line, the speed set, each integer is between 1 and .

输出描述:

The output is a real number, let your answer be a, and jury's answer be b, your answer will be considered as correct if and only if .
示例1

输入

2 8 1 1
2 4
2 8 1 1
2 4

输出

1.333333333
1.333333333

题意:

几天前,WRD正在玩一款名为Salty Fish Go的小游戏。我们可以按照以下方式简化游戏规则。
道路可以抽象为一维轴线,道路长度为L.在道路两端有两个魔术门,可以立即将WRD从位置L转移到位置0,或从位置0到位置0位置L,无需花时间。
WRD可以选择初始位置,初始运动方向和初始速度(从速度设置)。
途中有一些令人惊叹的加油站,其位置是随机的。在加油站,WRD可以将速度改变为设定的速度之一,而无需花时间。 (不要改变方向!)
路上有些珠宝,其位置是随机的。 WRD需要拿走所有的珠宝来赢得比赛。
WRD赢得比赛需要多长时间?
这是一个简单的游戏。但考虑到WRD已成为无脑的咸鱼,他的所有操作都是完全随机的。你能计算出他赢得比赛的预期时间吗?
输入描述:
输入包含多个测试用例,请处理至输入结束。
对于每个测试用例,输入的第一行包含四个正整数V(),L(),n(),m()来表示速度集的大小,道路的长度,加油站的数量,珠宝的数量。
然后,在一行中有V个整数,速度设置,每个整数在1和1之间。
输出描述:
输出是一个真实的数字,让你的答案是a,陪审团的答案是b,你的答案将被认为是正确的,当且仅当

思路:因为都是随机的,所有求出平均速度,平均路程,路程/时间就是预期时间了。。。。

ACDAIMA:

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;int v,l,n,m;int main()
{while (scanf("%d%d%d%d",&v,&l,&n,&m)!=EOF){double sum=0;for (int i=1;i<=v;++i){int x;scanf("%d",&x);sum+=x;}sum/=v;double ans=1.0*m*l/(m+1);ans=ans/sum;printf("%.10f\n",ans);}return 0;
}



这篇关于“今日头条杯”首届湖北省大学程序设计竞赛(网络同步赛)B. Salty Fish Go!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/698696

相关文章

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码