l63t89 发表于 2021-1-28 22:54

F题 What is the Probability ?

l63t89 发表于 2021-1-28 22:55

思考过程
简单概率题,没有什么难点。

l63t89 发表于 2021-1-28 22:56

源代码
#include<stdio.h>
#include<math.h>
int main()
{
        int t, n, i;
        double p;
        scanf("%d", &t);
        while (t--)
        {
                scanf("%d%lf%d", &n, &p, &i);
                printf("%.4f\n", p == 0 ? p : p * pow(1 - p, i - 1) / (1 - pow(1 - p, n)));
        }
        return 0;
}

l63t89 发表于 2021-1-28 23:00

遇到问题
无。

l63t89 发表于 2021-1-28 23:02

G题 Burger

l63t89 发表于 2021-1-28 23:03

思考过程
概率题,需要一个反向思维,有点难想,但听了讲解后挺容易理解的。

l63t89 发表于 2021-1-28 23:04

源代码
#include<stdio.h>
#include<string.h>
typedef long long LL;
double dp;
void init()
{
    dp=1.0;
    for(int i=4;i<100100;i+=2)
      dp=dp*(i-3)/(i-2);
}
int main()
{
    int n,x;
    scanf("%d",&n);
    init();
    while(n--)
    {
      scanf("%d",&x);
      printf("%.4f\n",1.0-dp);
    }
}

l63t89 发表于 2021-1-28 23:05

遇到问题
反向思考不一定能想到

l63t89 发表于 2021-1-28 23:06

H题 Coin Toss

l63t89 发表于 2021-1-28 23:07


l63t89 发表于 2021-1-28 23:09

l63t89 发表于 2021-1-28 23:12

思考过程
一开始没啥思路,但看了一个讲解,只要考虑全面,分号类,就没有那么难了。

l63t89 发表于 2021-1-28 23:13

源代码
#include <stdio.h>
#include <math.h>
int main()
{
    const double PI=acos(-1.0);
    double area;
    double n,m,t,c;
    int cas,i,j;
    double d11,d12,d13,d21,d22;
    scanf("%d",&cas);
    for(i=1;i<=cas;i++)
    {
      scanf("%lf%lf%lf%lf",&n,&m,&t,&c);
      d11=(t-c/2)*(t-c/2)*4;
      d12=(t-c/2)*(t-c)*(n+m-4)*2;
      d13=(t-c)*(t-c)*(n*m-(2*(n+m)-4));
      d21=c*(t-c/2)*((m-1)*2+(n-1)*2);
      d22=c*(t-c)*((m-1)*n+(n-1)*m-(m-1)*2-(n-1)*2);
      area=t*t*n*m;
      area=d11+d12+d13;
      area=d21+d22;
      area=(c*c-PI*(c/2)*(c/2))*(n-1)*(m-1);
      area=PI*c*c/4*(n-1)*(m-1);
      printf("Case %d:\n",i);
      for(j=1;j<=4;j++)
      {
            if(j==1)
                printf("Probability of covering %d tile= %.4lf%%\n",j,area/area*100);
            else
                printf("Probability of covering %d tiles = %.4lf%%\n",j,area/area*100);
      }
      printf("\n");
    }
    return 0;
}

l63t89 发表于 2021-1-28 23:14

遇到问题
此题属于高中的数学题,基本忘得差不多了。

l63t89 发表于 2021-1-28 23:14

I题 498-bis

l63t89 发表于 2021-1-28 23:15

思考过程
不会做。

l63t89 发表于 2021-1-28 23:16

源代码
#include<cstdio>
#include<cmath>
using namespace std;
int main() {
int x, a;
char c;
while(~scanf("%d", &x)) {
int sum = 0;
int ans = 0;
while(~scanf("%d", &a)) {
ans = ans * x + sum;
sum = sum * x + a;
scanf("%c", &c);
if(c == '\n') break;
}
printf("%d\n", ans);
}
return 0;
}

l63t89 发表于 2021-1-28 23:16

遇到问题
不会做(⊙﹏⊙)。

l63t89 发表于 2021-1-28 23:17

收获:
1.C++到C的流畅转换
2.欧几里得算法及扩展
3.对高中知识进行了一定的回忆
4.知道了还有差分序列这个东西

单片小菜 发表于 2021-2-4 12:04

感觉很高深的样子,没有看明白。
页: 1 [2]
查看完整版本: 灵动集训第三天