2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 A题 Weather Patterns
2017-09-25 15:49:45
writer:pprp
阅读理解,当时没有耐心去读,只要能读懂就大概可以做出来
题意如下:
有四种天气,
State 1: snow
State 2: rain
State 3: cloudy
State 4: sunny
给你一个4*4矩阵代表aij 代表从状态i转化为状态j的概率,其中第一天的概率为1
给你一串序列,问你从第一个到最后一个的概率
给你一个数字,问你该状态的数学期望是多少?
E(x) = 1 + 2 * p + 3 * p * p + .....
精度为1e-8,但是实际上要精确到1e-10
代码如下:
#include <iostream>
#include <cstdio> using namespace std; int main()
{
// freopen("in.txt","r",stdin);
double mtx[][];
double ans = ;
int neo; for(int i = ; i <= ; i++)
for(int j = ; j <= ; j++)
scanf("%lf",&mtx[i][j]);
getchar();
int pre, nex;
pre = -;
while()
{
scanf("%d",&neo);
char ch = getchar(); if(pre == -)
{
pre = neo;
}
else
{
nex = neo;
ans *= mtx[pre][nex];
pre = neo;
}
if(ch == '\n')
break;
}
printf("%.8lf\n",ans);
pre = -;
ans = ; while()
{
scanf("%d",&neo);
char ch = getchar(); if(pre == -)
{
pre = neo;
}
else
{
nex = neo;
ans *= mtx[pre][nex];
pre = neo;
}
if(ch == '\n')
break;
}
printf("%.8lf\n",ans); int rec;
scanf("%d",&rec);
double pprp = mtx[rec][rec];
ans = ;
double tmp = pprp;
for(int i = ;; i++)
{
double j = i*tmp;
if(j < 1e-)
break;
ans += j;
tmp *= pprp;
}
printf("%.8lf\n",ans*(-pprp)); scanf("%d",&rec);
pprp = mtx[rec][rec];
ans = ;
tmp = pprp;
for(int i = ;; i++)
{
double j = i*tmp;
if(j < 1e-)
break;
ans += j;
tmp *= pprp;
}
printf("%.8lf\n",ans*(-pprp));
return ;
}
2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 A题 Weather Patterns的更多相关文章
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 M. Frequent Subsets Problem【状态压缩】
2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 M. Frequent Subsets Problem 题意:给定N和α还有M个U={1,2,3,...N}的子集,求子集X个数,X满足:X是U ...
- HDU 4046 Panda (ACM ICPC 2011北京赛区网络赛)
HDU 4046 Panda (ACM ICPC 2011北京赛区网络赛) Panda Time Limit: 10000/4000 MS (Java/Others) Memory Limit: ...
- Skiing 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛H题(拓扑序求有向图最长路)
参考博客(感谢博主):http://blog.csdn.net/yo_bc/article/details/77917288 题意: 给定一个有向无环图,求该图的最长路. 思路: 由于是有向无环图,所 ...
- 2016 ACM/ICPC亚洲区青岛站现场赛(部分题解)
摘要 本文主要列举并求解了2016 ACM/ICPC亚洲区青岛站现场赛的部分真题,着重介绍了各个题目的解题思路,结合详细的AC代码,意在熟悉青岛赛区的出题策略,以备战2018青岛站现场赛. HDU 5 ...
- ICPC 2018 徐州赛区网络赛
ACM-ICPC 2018 徐州赛区网络赛 去年博客记录过这场比赛经历:该死的水题 一年过去了,不被水题卡了,但难题也没多做几道.水平微微有点长进. D. Easy Math 题意: ...
- [刷题]ACM/ICPC 2016北京赛站网络赛 第1题 第3题
第一次玩ACM...有点小紧张小兴奋.这题目好难啊,只是网赛就这么难...只把最简单的两题做出来了. 题目1: 代码: //#define _ACM_ #include<iostream> ...
- 2016 ACM/ICPC亚洲区大连站-重现赛 解题报告
任意门:http://acm.hdu.edu.cn/showproblem.php?pid=5979 按AC顺序: I - Convex Time limit 1000 ms Memory li ...
- 2014ACM/ICPC亚洲区鞍山赛区现场赛1009Osu!
鞍山的签到题,求两点之间的距离除以时间的最大值.直接暴力过的. A - Osu! Time Limit:1000MS Memory Limit:262144KB 64bit IO Fo ...
- 2017ICPC南宁赛区网络赛 Minimum Distance in a Star Graph (bfs)
In this problem, we will define a graph called star graph, and the question is to find the minimum d ...
随机推荐
- 禁止Centos系统You have new mail in /var/spool/mail/root提示
禁止Centos系统You have new mail in /var/spool/mail/root提示 https://blog.csdn.net/oyym_mv/article/details/ ...
- Linux修改信息
修改时间 sudo date -s MM/DD/YY //修改日期 sudo date -s hh:mm:ss //修改时间 在修改时间以后,修改硬件CMOS的时间 sudo hwclock --sy ...
- C的指针疑惑:C和指针13(高级指针话题)上
int *f(); f为一个函数,返回值类型是一个指向整形的指针. int (*f)(); 两对括号,第二对括号是函数调用操作符,但第一对括号只起到聚组的作用. f为一个函数指针,它所指向的函数返回一 ...
- 使用JS实现页面倒数计数
<script type="text/javascript"> var number = 5; function showNum(){ if(number==1){ w ...
- Java并发编程实战3章
1.同步包括两方面:原子性和可见性. 2.可见性:因为在多线程程序中,如果没有采用正确的同步,有些线程就会得到失效数据. Java内存模型要求,变量的读取操作和写入操作都必须是原子操作,但对于非vol ...
- Windows server 2003 伪静态配置方法
Windows server 2003 伪静态配置方法 先我们下载Rewrite伪静态组件到服务器,然后解压到D:\Rewrite下,解压后如下图: 提示:ReWrite组件所在目录要有网站所有者 ...
- undefined reference to _imp__xmlFree
Re: [xml] MSYS and MINGW: undefined reference to _imp__xmlFree From: Mike Peat <mpeat unicorninte ...
- C# 获取计算机cpu 硬盘 网卡信息
/// <summary>/// 机器码 /// </summary> public class MachineCode { ...
- [Windows Powershell]-学习笔记(5)
Powershell自动化变量 Powershell 自动化变量 是那些一旦打开Powershell就会自动加载的变量,或者说是运行是变量. 这些变量一般存放的内容包括 用户信息:例如用户的根目录$h ...
- 【U3D】脚本引用的类,如何显示在编辑器界面
有时候,我们的类里面会组合其他功能模块 如何让这些功能类的值在编辑器界面出现呢? 1:引用类的访问类型必须是Public 2: 类必须声明为可序列化的,即在类头加入以下声明 [System.Seria ...