[CF-676B]PYRAMID OF GLASSES

Posted 可能是轩轩叭

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[CF-676B]PYRAMID OF GLASSES相关的知识,希望对你有一定的参考价值。

 题目链接:http://codeforces.com/problemset/problem/676/B

很水的递推;

题目大意:

有一个n层的酒杯金字塔,每个酒杯容量为1。每秒钟,会有1份酒倒到最上方的酒杯里。当某个酒杯装满时,它会以同样的流量溢出到下一层的两个酒杯之中。求t秒过后有多少装满的酒杯。

可以假设第一层有容积为T的酒,对于每一个酒杯来说来说,如果now>=1,下一层的左右两边就分别 += (now-1)/2;

上代码

 1 #include<cstdio>
 2 #include<algorithm>
 3 #include<cmath>
 4 #include<iostream>
 5 #include<cstdlib>
 6 #include<string>
 7 #include<cstring>
 8 #include<queue>
 9 #include<deque>
10 #include<stack>
11 #define LL long long
12 using namespace std;
13 int n,t,ans;
14 double dp[15][15];
15 int main(){
16     scanf("%d%d",&n,&t);
17     dp[1][1] = t;
18     for(int i = 1;i <= n;i++)
19        for(int j = 1;j <= i;j++){
20              if(dp[i][j] >= 1.0){
21                   ans++;
22                   dp[i+1][j] += (dp[i][j]-1)/2;
23                   dp[i+1][j+1] += (dp[i][j]-1)/2;
24              }
25        }
26     printf("%d\n",ans);
27     return 0;
28 }

 

以上是关于[CF-676B]PYRAMID OF GLASSES的主要内容,如果未能解决你的问题,请参考以下文章

CF676CVasya and String(二分查找,线性扫描尺取法)

CF676DTheseus and labyrinth(BFS,最短路)

CF676E:The Last Fight Between Human and AI

zoj 2771 - Get Out of the Glass

Codeforces Round #354 (Div. 2) B. Pyramid of Glasses (模拟+思维)

CodeForces - 983B XOR-pyramid(区间dp,异或)