Just Pour the Water ZOJ - 2974 矩阵快速幂

ITIL 4 Foundation 自学通关笔记1 ITIL 4 Foundation 自学通关笔记 阅读详情

思路:

用一个N*N的矩阵的第一行来记录水量。

另外一个矩阵记录转移的方式,不是很好描述,具体看代码。

当k是0的时候,水量都给了自己。

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int n;
const int N = 25;
struct Matrix {
    double m[N][N];
    Matrix(){};
    Matrix operator*(Matrix const &a) const {
        Matrix res;
        memset( res.m,0,sizeof res.m ) ;
        for ( int i=0; i<n; i++ ) {
            for ( int j=0; j<n; j++ ) {
                for (int k=0;k<n;k++ ) {
                    res.m[i][j] += this->m[i][k]*a.m[k][j];
                }
            }
        }
        return res;
    }
};
Matrix res;
void pow_mod( Matrix base ,int n ) {

    while ( n>0 ) {
        if ( n&1 ) res = res*base;
        base = base*base;
        n>>=1;
    }
}
int main()
{
    int T;
    cin>>T;
    while ( T-- ) {
        scanf("%d",&n);
        memset( res.m,0,sizeof res.m );
        for ( int i=0; i<n; i++ )
            scanf("%lf",&res.m[0][i]);
        int k;
        Matrix base;
        memset( base.m,0,sizeof base.m );
        for ( int i=0; i<n; i++ ) {
            scanf("%d",&k);
            if ( k==0 ) {
                base.m[i][i] = 1;
                continue;
            }
            for ( int j=0; j<k; j++ ) {
                int num;
                scanf("%d",&num);
                base.m[i][num-1] = 1.0/k;
            }
        }
        int time;
        scanf("%d",&time);
        pow_mod( base,time ) ;
        for ( int i=0; i<n; i++ )
            if ( i==n-1 ) printf("%.2f\n",res.m[0][i]);
            else printf("%.2f ",res.m[0][i]);
    }


    return 0;
}

操作系统|知识梳理|复习(下) 操作系统复习 阅读详情

相关推荐

Unity中实现FairyGUI弹窗背景模糊的3种方法对比(附完整代码)

本文详细对比了Unity中实现FairyGUI弹窗背景模糊的3种方法,包括FairyGUI原生滤镜方案、多摄像机混合渲染方案和渲染纹理动态混合方案。每种方法均附有完整代码示例,帮助开发者根据项目需求选择最佳方案,实现镜头虚化模糊效果,提升游戏UI的视觉沉浸感。

ff678的博客 231

【矩阵快速幂】ZOJ 2974 Just Pour the Water

Source : ZOJ 2974 Just Pour the Water http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1973 Problem Description Shirly is a very clever girl. Now she has two containers (A and B), each wit

Hacker_vision 544

InsightFace(RetinaFace + ArcFace)人脸识别实战:从模型部署到Web服务构建

本文详细介绍了如何利用InsightFace框架,结合其集成的RetinaFace人脸检测与ArcFace人脸识别预训练模型,从零开始构建一个高性能的Web人脸识别服务。内容涵盖环境搭建、模型部署、核心代码解析(包括五点仿射对齐关键步骤)、FAISS向量检索集成以及基于FastAPI的Web服务开发,并提供了实战优化与常见问题排查指南,帮助开发者快速实现工业级应用。

weixin_29054245的博客 225

ZOJ 2974 Just Pour the Water(矩阵快速幂)

经典的倒水问题! ZOJ 2974 Just Pour the Water(矩阵快速幂) Description Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the water in A into B, and simultaneous pours h

1564

使用3dmax Morpher制作Unity表情动画

关于游戏人物的面部表情动画 方案一:如果面部骨骼数丰富的话,可以直接做骨骼动画 方案二:采用变形器(3dmax是Morpher,maya是blendshape)修改相应通道的权重值来做表情动画 本文简述方案二的做法。 说明:本文截图中3dsMax版本为2017。笔者第一次使用3dsMax,欢迎指正。 3dmax中导入人物模型,选择需要变形的对象,即head。当前对象附带skin信息。 ...

写作帮助思考 2万+

【图数据库与知识图谱入门】2.2 图数据库 vs. 关系型数据库 vs. NoSQL数据库

本文对比了关系型数据库、NoSQL数据库和图数据库的核心差异与应用场景。关系型数据库以二维表结构为核心,适合结构化数据的事务处理(如MySQL),但多表关联查询性能随层级增加而下降。NoSQL数据库(如MongoDB)具有灵活schema,适合海量非结构化数据存储,但关联查询能力较弱。图数据库专注于节点-边关系建模,擅长处理复杂关联分析(如社交网络)。通过学生-课程案例展示了MySQL的多表JOIN操作和MongoDB的两种关联实现方式(内嵌文档和文档引用),揭示了不同数据库在数据关联处理上的本质区别。

kngines 1541

【ZOJ 2974】Just Pour the Water(矩阵快速幂)

传送门:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2974 题意 给出n个杯子与初始水量同时进行操作 将其中的水同时平均分入所指定的杯子 进行x次后 输出杯子剩余水量 刚拿到这个题,第一反应是递推找规律,但是因为每个杯子的初始水量是未知的,所以能找的只是每个杯子水量与其余杯子水量的关系。 但是看到...

a5615024的博客 193

金智维KRPA实战:Excel自动化数据处理全流程解析

本文详细解析了金智维KRPA在Excel自动化数据处理中的全流程应用,涵盖COM接口和文件读写两种核心技术方案,以及销售报表生成、数据清洗和可视化仪表盘等实战案例。通过企业级应用的异常处理、性能优化和安全合规实践,显著提升数据处理效率和准确性,助力企业降本增效。

weixin_30329623的博客 598

zoj 2974 Just Pour the Water矩阵快速幂

Just Pour the WaterTime Limit: 2 Seconds Memory Limit: 65536 KB Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the wa...

weixin_30814329的博客 116

[Unity开发] [PICO]避坑指南:PICO商店上传APP时PXR Platform APPID设定详解

PICO开发者上传Unity应用时常见的"APPID不符"问题,主要源于混淆了开发者后台两个不同位置的APPID。

每日出拳老爷子的博客 556

TIA protal与SCL从入门到精通(4)——软件单元使用

平台: TIA portal 15.1 1.添加软件单元 添加软件单元如下图: 关于软件单元使用基本限制,看如下文章即可 TIA protal与SCL从入门到精通(3)——软件单元基本介绍 每个软件单元是一个独立结构,所以每个软件单元的运行方式与实际PLC类似,所以首先添加主函数块: 注意:无论系统是否是具有并发性(这里不要混淆并行与并发的概念),在PLC所有主函数执行总是按主函数依次完成...

苦走一口田 7375

Just Pour the Water ZOJ - 2974 (矩阵快速幂)

Just Pour the Water ZOJ - 2974 Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the...

codeswarrior的博客 328

通用、可复用的 AI Skill 开发基本流程

-----name:唯一标识符(建议用领域-功能格式):自然语言描述触发条件(AI 依赖此判断是否激活)tags(可选):便于分类和搜索version:支持后续迭代步骤输出物1. 定范围触发场景描述2. 写元数据name3. 填内容结构化 Markdown 文件4. 做验证可运行 + 符合规范5. 去集成放入对应 IDE 目录6. 持续维护跟进框架更新通过这套流程,你不仅可以开发(Hooks 最佳实践)(原生 WebGL 优化)(Pandas/Numpy 高效写法)

lpfasd123的博客 727

ZOJ 2974-Just Pour the Water(矩阵快速幂)

Description Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the water in A into B, and simultaneous pours half of the water

Halo 921

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

ZOJ - 2974 Just Pour the Water(矩阵快速幂)

矩阵快速幂的题,之前没怎么写过,参考的别人的代码。#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;cstdio&gt; using namespace std; typedef vector&lt;double&gt; vec; typedef vector&lt;vec&gt; mat; typedef long l...

GYH0730的博客 304

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Just Pour the Water ZOJ - 2974 (矩阵快速幂)

题目具体转载来自大佬:https://blog.youkuaiyun.com/Anxdada/article/details/73603752我觉得他风格很好这叫C++写题哈哈代码:#include&lt;bits/stdc++.h&gt; using namespace std; double s[25],result[25]; int size; struct Ma { double a[25][...

galesaur_wcy 283

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

ZOJ 2974 Just Pour the Water(矩阵快速幂)

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2974给出一个水桶,里面有不同的谁,每分钟根据给出的要求平分水桶里的水。 使用矩阵乘法,要注意当输入为0时水留在原来的桶里#include<iostream> #include<cstdio> #include<set> #include<string> #incl

宝树啊宝树 564

ZOJ2974 Just Pour the Water(5th 浙江省赛)矩阵快速幂

问题链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2974问题描述:Just Pour the WaterTime Limit: 2 Seconds      Memory Limit: 65536 KBShirly is a very clever girl. Now she has two containers ...

Jasonare的博客 260

ZOJ 2974 Just Pour the Water

Just Pour the Water Time Limit:2 Seconds Memory Limit:65536 KB Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the wa...

~ 565

zoj 2974 Just Pour the Water 矩阵

#include #include #include #include #include #include using namespace std; #define LL long long const double eps=1e-14; int n; struct matrix{ double f[22][22]; }c; void mul(matrix &a,matrix

冷月之殇 1301

ZOJ - 2974 Just Pour the Water

<br />表示十分无语,本想写个矩阵类的。同时重载它的乘法运算之类的。但总是异常退出,把类里的矩阵开小了后就没问题了。不知道为什么!! 我只开了double[22][22]大小的数组啊 T_T<br /> <br />最后还是算了, 直接写吧。 只是代码可重用性不怎么好。<br /> <br /> <br />这里在说下这个矩阵的构造:c[i][j] 表示i杯子向j杯子倒入自己原先c[i][j]分之一的水。<br /> <br /> <br />#include <cstdio> #include <a

李へいてい 1351

zoj 2974 Just Pour the Water

思路:由于M相当之大,因此可以构造矩阵快速幂来求解 mat[i][j]表示第i个被子给第j个被子的水的百分比,如果k==0,则全给自己,mat[i][i]=1.0; 代码如下: #include #include #include #include #include #include #include #include #define MAX 31 using namespa

yueqiq 578

ZOJ 2974 Just Pour the Water

Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of the water in A into B, and simultaneous pours half of the water in B into A. A

Occult 416

ZOJ - 2974 Just Pour the Water

题意:每一分钟,每个杯子都要向其他K个杯子倒水,这K个杯子每个道K分之一的水。每次倒水都是所有杯子同时进行。问经过M分钟每个杯子有多少水。

char256 595

Just Pour the Water

分析样例转移矩阵有,给哪个容器倒水就赋值1/k,没有倒水给自己赋值1。操作重复,考虑矩阵快速幂转换即可。有转移矩阵,初始矩阵。

Lanthamum的博客 272

ZOJ2974-Just Pour the Water

Just Pour the Water Time Limit: 2 Seconds      Memory Limit: 65536 KB Shirly is a very clever girl. Now she has two containers (A and B), each with some water. Every minute, she pours half of

wang_128的博客 377
上一篇: ZOJ 3497 Mistwald 矩阵快速幂
下一篇: Cutting Game FZU - 2268 二进制
Peppermint__
博客等级 码龄10年 4粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值