计蒜客 - Weather Patterns

91 篇文章 0 订阅

链接:

  https://nanti.jisuanke.com/t/17308


题意:

  有4种天气状态,然后给你一个4
*4的矩阵, Aij 代表从第i个状态变为第j个状态的概率,然后前两行问你接下来的k天的天气为这些状态的概率,然后后两个询问为天气状态一直保持在同一状态的天数期望。


思路:

  对于第一种询问给出的a b c d e f,直接输出 Aab×Abc×Acd×Ade×Aef 即可,然后对于第二种询问,直接输出 Aii1Aii+1 即可。


实现:

#include <bits/stdc++.h>
using namespace std;
int main() {
    double a[7][7];
    int num[27], cnt;
    char s[1007];
    for(int i=1 ; i<=4 ; i++) for(int j=1 ; j<=4 ; j++) scanf("%lf", &a[i][j]);
    getchar();
    int t = 2;
    while(cnt = 0, t--) {
        gets(s);
        for(int i=0 ; s[i] ; i++) if(isdigit(s[i])) num[cnt++] = s[i]-'0';
        double ans = 1.0;
        for(int i=1 ; i<cnt ; i++) ans *= a[num[i-1]][num[i]];
        printf("%.8f\n", ans);
    }
    t = 2;
    while(t--) {
        scanf("%d", &cnt);
        printf("%.8f\n", a[cnt][cnt]/(1-a[cnt][cnt])+1);
    }
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值