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 ...
随机推荐
- 剖析Docker文件系统:Aufs与Devicemapper
http://www.infoq.com/cn/articles/analysis-of-docker-file-system-aufs-and-devicemapper Docker镜像 典型的Li ...
- Django源码安装方法及创建启动项目
一.源码安装方法 下载源码包:https://www.djangoproject.com/download/ 输入以下命令并安装: tar xzvf Django-X.Y.tar.gz # 解压下载包 ...
- Bad Hair Day---poj3250(栈的运用)
题目链接:http://poj.org/problem?id=3250 题意: n个牛排成一列向右看,牛i能看到牛j的头顶,当且仅当牛j在牛i的右边并且牛i与牛j之间的所有牛均比牛i矮. 设牛i能看到 ...
- centos6.8安装Discuz!X3.1(PHP论坛)
1.首先搭建apache+mysql+php环境: 一.安装 MySQL 首先来进行 MySQL 的安装.打开超级终端,输入: [root@localhost ~]# yum install mysq ...
- Linux常见错误之Could not get lock /var/lib/dpkg/lock - open
在Ubuntu系统上安装vim是遇到的问题: root@ubuntu:/# vim The program 'vim' can be found in the following packages: ...
- Spring基本功能-扫描与继承
一.Spring的扫描 一个稍大的项目中,可能会有成百上千个bean,此时采用xml的配置形式注入bean,一方面是配置文件显得十分庞大,另一方面也会导致后期的维护难度增加,为 此,Spring引入了 ...
- 工作笔记-javascript-网络层封装
/** * @Author Mona * @Date 2016-12-08 * @description 网络层封装 */ /** * 封装基本请求方式 */ window.BaseRequest = ...
- 简单认识python的数据类型和语法
一.Python介绍 1用途 1)WEB开发 最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Djang ...
- A class for dynamic icons in Windows
A class for dynamic icons in Windows #include <windows.h> class DynamicIcon {public: DynamicI ...
- android 弹出带按钮的对话框
package com.example.helloworld; import android.os.Bundle;import android.app.Activity;import android. ...