CodeForces 313C Ilya and Matrix】的更多相关文章

Ilya and Matrix Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit Status Practice CodeForces 313C Description Ilya is a very good-natured lion. He likes maths. Of all mathematical objects, his favourite one is matri…
题目链接:http://codeforces.com/problemset/problem/313/C 题目意思:给定 4n 个整数(可以组成 2n × 2n 大小的矩阵),问通过对这些整数进行排列,求出 the resulting maximum beauty of the matrix.这个最大值的定义是这样的:先定义m为所有整数中的最大值.如果n = 0,那么,这个beauty 数就是m:否则把2n × 2n 大小的矩阵划分为  2n - 1 × 2n - 1- 大小的子矩阵,那么 bea…
http://codeforces.com/contest/313/problem/C #include <cstdio> #include <cstring> #include <algorithm> using namespace std; ]; int main() { int n; scanf("%d",&n); ; i<n; i++) { scanf("%lld",&a[i]); } sort(a,…
Educational Codeforces Round 40 (Rated for Div. 2) C. Matrix Walk time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output There is a matrix A of size x × y filled with integers. For every , *A**i, …
题目链接:http://codeforces.com/problemset/problem/486/B 题目意思:给出一个m行n列的矩阵B(每个元素只由0/1组成),问是否可以利用矩阵B,通过一定的运算逆回来求出矩阵A(行和列数都跟B相同).可以的话输出"YES" 并输出矩阵A,否则输出 "NO".运算如下: 也就是,Bij 是通过 A 矩阵第 i 行中所有的数做 或(|) 运算接着再跟所有第 j 列中所有的数做 或 运算求出来的.or 运算就是除了所有元素都为 0…
http://codeforces.com/problemset/problem/518/D 题意:n个人,每秒有p的概率进电梯,求t秒后电梯里人数的期望 考虑dp:f[i][j]代表第i秒有j个人的概率,f[0][0]=1,f[i][j]=f[i-1][j-1]*p+f[i-1][j]*(1-p),特别有:f[i][n]=f[i-1][n]+f[i-1][n-1]*p #include<cstdio> #include<cmath> #include<algorithm&g…
Ilya is very fond of graphs, especially trees. During his last trip to the forest Ilya found a very interesting tree rooted at vertex 1. There is an integer number written on each vertex of the tree; the number written on vertex i is equal to ai. Ily…
题链: http://codeforces.com/problemset/problem/518/D题解: 期望dp. 定义dp[t][i]表示在第t秒开始之前,已经有了i个人在电梯上,之后期望能有多少人上电梯. 转移: dp[t][i]=(1-P)*dp[t+1][i]+P*(dp[t+1][i+1]+1) 代码: #include<bits/stdc++.h> #define MAXN 2005 using namespace std; int N,T; double P,dp[MAXN]…
题目链接 Clear The Matrix 题意 给定一个$4 * n$的矩形,里面的元素为$'.'$或$'*'$.现在有$4$种正方形可以覆盖掉$'*'$,正方形的边长分别为$1,2,3,4$. 求把整个矩形变成全$'.'$的最小代价. 考虑状压DP 设$f[i][j]$为前$i$列已经全部变成'.',第$i + 1$到第$i + 4$列的这$16$个格子状态为$j$的最小花费. 这$16$个格子标号如下 $0$   $4$   $8$   $12$ $1$   $5$   $9$   $13…
题目大意 考虑一个 $4$ 行 $n$ ($4\le n\le 1000$)列的矩阵 $f$,$f$ 中的元素为 * 或 . . 对 $f$ 进行若干次如下变换: 将一个 $k\times k$($1\le k \le 4$)的子矩阵中的元素全部替换为 .,代价为 $a_k$( $1 \le a_k \le 1000$). 求将 $f$ 中的元素全置为 * 所需的最小代价. 分析 很容易想到的做法是「状压 DP」. Codeforces 上把「状态压缩」这个方法称作「bitmasks」.我从 C…