201612-5 卡牌游戏
**根据题目样例解释得到每种卡牌拥有状态之间的关系,然后转换成等式,高斯消元是2^(3n) **
80分超时代码:
#include <iostream>
#include <algorithm>
#include <cstring>
#include <vector>
#include <queue>
#define ls (u<<1)
#define rs (u<<1|1)
#define mid (l+r>>1)
using namespace std;
typedef long long LL;
typedef pair<int,int> PII;
const int N = 13, mod = 1e9 + 7;double p[20][20];
double s[1<<N][1<<N];
int n, m;// 高斯消元
int gauss(double a[][1<<N], int n) { // 0 鏈夎В ; 1 鏃犵┓瑙?; 2 鏃犺В
const double eps = 1e-6; int c, r;for (c = 0, r = 0; c < n; ++c) { int t = r;for (int i = r; i < n; ++i) if (fabs(a[i][c]) > fabs(a[t][c]))t = i;if (fabs(a[t][c]) < eps) continue; for (int i = c; i < n + 1; ++i) swap(a[t][i], a[r][i]);for (int i = n; i >= c; --i) a[r][i] /= a[r][c];for (int i = r + 1; i < n; ++i)if (fabs(a[i][c]) > eps)for (int j = n; j >= c; --j)a[i][j] -= a[r][j] * a[i][c];++r;}if (r < n) {for (int i = r; i < n; ++i)if (fabs(a[i][n]) > eps) return 2;return 1; }for (int i = n - 1; i >= 0; --i)for (int j = i + 1; j < n; ++j)a[i][n] -= a[j][n] * a[i][j];return 0;
}void calc(int x)
{vector<pair<int,double> >a, b;a.clear(); b.clear();;for(int i = 0;i < n;i ++)if(x>>i&1)a.push_back({i, 0});else b.push_back({i, 0});double l = 0, r = 0;for(int i = 0;i < a.size();i ++)for(int j = 0;j < b.size();j ++){int x = a[i].first, y = b[j].first;l += p[x][y]; r += p[y][x]; a[i].second += p[x][y];b[j].second += p[y][x];}for(int i = 0;i < a.size();i ++)for(int j = 0;j < b.size();j ++){int z = a[i].first, y = b[j].first;s[x][x^1<<z] -= p[y][z]*a[i].second*b[j].second/l/r;s[x][x|1<<y] -= p[z][y]*a[i].second*b[j].second/l/r;}s[x][x] = 1;
}int main()
{scanf("%d%d", &n, &m);for(int i = 0;i < n;i ++)for(int j = i+1;j < n;j ++)scanf("%lf", p[i]+j), p[j][i] = 1-p[i][j];s[(1<<n)-1][1<<n] = 1;for(int i = 0;i < 1<<n;i ++)calc(i);gauss(s, 1<<n);while(m --){int x = 0;for(int i = 0, j;i < n;i ++)scanf("%d", &j) ,j?x |= 1<<i:0;printf("%.5lf\n", s[x][1<<n]);}return 0;
}
201612-5 卡牌游戏相关推荐
- 【概率DP】$P2059$ 卡牌游戏
[概率DP]P2059 卡牌游戏 链接 题目描述 N个人坐成一圈玩游戏.一开始我们把所有玩家按顺时针从1到N编号.首先第一回合是玩家1作为庄家.每个回合庄家都会随机(即按相等的概率)从卡牌堆里选择一张 ...
- 天池 在线编程 卡牌游戏(01背包)
文章目录 1. 题目 2. 解题 1. 题目 你跟你的朋友在玩一个卡牌游戏,总共有 n 张牌. 每张牌的成本为 cost[i] 并且可以对对手造成 damage[i] 的伤害. 你总共有 totalM ...
- 动漫品牌“爆笑虫子”宣布与xNFT Protocol战略合作,开发NFT数字卡牌游戏
2021年4月23日,xNFT Protocol与动漫品牌"爆笑虫子"进行战略合作,推动"爆笑虫子"在卡牌游戏领域进行数字化转型.IP的数字(NFT)化是xNF ...
- CCF201612-5 卡牌游戏(募集解题代码)
试题编号: 201612-5 试题名称: 卡牌游戏 时间限制: 3.0s 内存限制: 256.0MB 问题描述: 问题描述 小Q和小M是游戏数值策划师,他们最近在测试自己新设计的卡牌对战游戏.游戏总共 ...
- 算法题 - 卡牌游戏问题 - Python
问题描述: 卡牌游戏问题 小a和小b玩一个游戏,有 n张卡牌,每张上面有两个正整数 x, y.取一张牌时,个人积分增加 x,团队积分增加 y.求小a,小b各取若干张牌,使得他们的 个人积分相等,且 ...
- java卡牌游戏详解
代码如下: package zxc;//文件夹名称 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.even ...
- 基于QT开发的开源局域网联机UNO卡牌游戏报告(附github仓库地址)
源代码: https://github.com/yunwei37/UNO-game-oop 目录 1. 需求分析 1.1. UNO卡牌游戏的基本功能 1.2. UNO卡牌游戏的规则 2. 总体设计 3 ...
- 卡牌游戏战斗系统的设计和实现二
卡牌游戏战斗系统的设计和实现二 http://www.lxway.com/4418844614.htm 在一篇文章中,我更多的是从游戏理论的角度,讨论了战斗的系统的设计.这篇文章中,我将从程序的角度, ...
- 盛大搅局手游市场:引入日系卡牌游戏_0
腾讯科技讯(娄池)7月18日消息,盛大游戏宣布热门手游<百万亚瑟王>于今日开启国服公测,这款由日本知名游戏公司Square Enix(SE)研发,盛大游戏韩国子公司Actoz Soft负责 ...
- 卡牌游戏源代码(原创)(控制台)
游戏预览: 完成度90%,约3000行,过年这几天全用在这上面了 由于尚未学到QT等,因此只能在黑窗口下面制作了 未完成的部分: ①战斗代码未优化(800行,精简后应该能降到200行左右) ②关卡掉落 ...
最新文章
- 基于Spring Boot和Spring Cloud实现微服务架构学习--转
- IDA执行python脚本文件,python编辑器的操作
- Dubbo(十)之配置加载流程
- python识别收件地址_Python3 自动识别地址信息
- 画数轴的步骤_上分助手北师大数学七年级上册第二章有理数第二节数轴详细拆解...
- PHP str_replace() 函数详解
- Javascript设计模式-18-状态模式
- java读写yml文件
- redis 模糊删除keys
- 开通百度通用翻译API---主打个人标准版
- TIA博途S7-1200学习笔记——指令集
- 如何在小米9 se(安卓9)安装Xposed框架?
- CSS【Text(文本)+Fonts(字体)】
- AVFoundation开发秘籍笔记:第5章 AV Kit用法
- 大白话给你讲明白UDS诊断(汽车诊断服务 实例应用图文讲解)(二)
- std::find和std::string::find
- 妙趣横生的算法(c语言实现),妙趣横生的算法(C++语言实现) 带目录完整pdf[4MB]
- 如何设置Chrome夜间模式、如何设置Chrome背景色
- 论文阅读 (90):Proposal-based Multiple Instance Learning (P-MIL, 2023CVPR)
- 私域流量互换的本质是什么
热门文章
- 化学版2048,你玩过吗?内含游戏链接
- 学生渐进片add如何给_渐进镜片的说明与镜架选择
- 获取 子文件夹 后缀_CSDN学院第一个Ptython Homework-- 递归统计文件夹大小
- rk3399性能_AIIA AI公布首轮评估结果:瑞芯微RK3399数据抢眼
- java实现数字转mac,Java Ethernet.getSourceMAC方法代码示例
- 初级Java开发面试必问项!!! 标识符、字面值、变量、数据类型,该学学了!
- java基础变量_Java基础语法之变量和常量
- abb限位开关已打开drv1_广告雕刻机限位开关触发
- 650c公路车推荐_2020最具性价比的中高端公路整车盘点
- baseresponse响应类_Java response响应体和文件下载实现原理