首页 > 其他分享 >AtCoder ABC 266 复盘

AtCoder ABC 266 复盘

时间:2024-01-24 23:56:49浏览次数:29  
标签:AtCoder AC ABC dfrac Code text 266 max dp

A Middle Letter

水沝淼㵘纯模拟题。根据题意,易得答案。

AC Code

B Modulo Number

模拟(+数学?)。先 \(N\leftarrow N\bmod 998244353\),然后 \(N\leftarrow N+998244353\ (N<0)\),最后输出 \(N\)。

AC Code

C Convex Quadrilateral

数学。有一个公式判断(名字我忘了)可以判断。详见 AC Code

D Snuke Panic (1D)

DP 经典永流传。

设 $dp[x][t] = $ 高桥在 \(t\) 时刻到达坐标 \(x\) 之前捕获的 Snukes 的数量总和的最大值,则有转移方程为:

\[dp[x][t]=\max(dp[x-1][t-1],dp[x][t-1],dp[x+1][t-1])+\text{当他于}\ t\ \text{时刻在坐标}\ x\ \text{处时,他可以捕获的 Snukes 的数量} \]

AC Code

E Throwing the Die

首先我们需要知道,什么是 expected value(期望值)。

什么是期望值?

期望值是指对于某个随机事件,所有可能结果的加权平均数,其中每个结果的权重是其发生的概率。通俗点讲,期望值可以理解为一个事件在多次试验中出现的平均次数。

在继续游戏时,目前的结果不会影响得分,因此预期值只取决于我们还多掷几次骰子。

如果我们多掷骰子 \(X\) 次,那么 \(f(X)\) 就是最大的预期得分。当骰子朝上的一面是 \(R\) 时,如果我们退出游戏,我们可以获得 \(R\) 分;否则,我们可以获得 \(f(X-1)\) 分。当 \(X=0\) 时,\(f(X)=0\)。由此可以得到计算公式:

\[f(X) = \begin{cases}0&X=0\\\dfrac{1}{6}\max(1,f(X-1))+\dfrac{1}{6}\max(2,f(X-1))+\dfrac{1}{6}\max(3,f(X-1))+\dfrac{1}{6}\max(4,f(X-1))+\dfrac{1}{6}\max(5,f(X-1))+\dfrac{1}{6}\max(6,f(X-1))&\text{otherwise}\end{cases} \]

答案即为 \(f(N)\)。

思考一下,我们即可想出非递归写法

标签:AtCoder,AC,ABC,dfrac,Code,text,266,max,dp
From: https://www.cnblogs.com/TigerTanWQY/p/17986164

相关文章

  • AT_abc296_d
    题目大意现在有两个数\(n\)和\(m\),请问你是否可以构造出一个数\(x\),使得\(m\lex\),并且让\(x=a\timesb\left(1\lea,b\len\right)\)。思路我们可以枚举数\(a\),判断是否可以使得\(a\timesb=x\)。但是我们可以发现,这样是错误的,因为\(1\len,m\le10^{12}\),并且答案也......
  • 题解-[ABC288D] Range Add Query
    题目:[ABC288D]RangeAddQuery-洛谷|计算机科学教育新生态(luogu.com.cn) 大意:一些数,选一个区间A(L~R),并再选一个区间B(长度k),这个区间B的每个数加减(加负数=减一个数)一个数,最终使得区间A全部数为0举个例(样例)0.   3-11-2201.  0-4-2-220 (-3)2.  ......
  • AtCoder Regular Contest 170 A-C
    A-YetAnotherABProblem贪心。定义下标\(i\)满足\(S[i]=B,T[i]=A\)为\(BA\)型,\(S[i]=B,T[i]=A\)为\(AB\)型,\(AA\)型、\(BB\)型同理。对所有\(BA\)型的下标\(i\)去匹配其右侧的第一个\(AB\)型的下标\(j\),匹配成功则对下标\(i\)和\(j\)进行操作,若无法匹配,则对剩余的\(BA\)型......
  • abc等多个系统 每个系统有多个文档 ,每个系统根据不同的文类型获取该文件类型最新上传
    假如有abc等多个系统每个系统有多个文档,每个系统根据不同的文类型获取该文件类型最新上传时间文档(文件类型(文件类型字段为idoctype)分别为设计文档和评审记录文档,最新上传时间字段为duptime)这个思路和Java代码list怎莫处理对于这个问题,可以使用一个嵌套的Map来处理。外层的M......
  • AtCoder Regular Contest 170 D Triangle Card Game
    洛谷传送门AtCoder传送门赛后调了40min,哈哈。首先先把\(a,b\)排序。考虑先枚举Alice选的数\(a_i\),然后若\(\forallj,\existsk\nei,(a_i,b_j,a_k)\)能组成三角形,Alice就赢了。考虑简化条件。\((x,y,z)\)能形成三角形的充要条件是\(z\in(|x-y|,x+......
  • Toyota Programming Contest 2024#1(AtCoder Beginner Contest 337)
    ToyotaProgrammingContest2024#1(AtCoderBeginnerContest337)A-Scoreboard代码:#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;usingpii=pair<ll,ll>;#definefifirst#definesesecondusingi128=__int128_t;void......
  • AtCoder Beginner Contest 337
    基本情况ABC秒了,D数组在空间复杂度上面第一次疯狂吃亏,吃了两次罚时过。赛后看官方题解,发现C做法薄纱我。C-LiningUp2https://atcoder.jp/contests/abc337/tasks/abc337_c这题一眼链表,我用双向链表实现,代码石山。官方题解就题论题,更本质。其实这题并没必要开双向链......
  • AT_abc337_d 的题解
    AT_abc337_d的题解题目大意给你一个\(H\timesW(H\timesW\leq2\times10^5)\)的矩阵,矩阵由o、x和.构成。存在一种操作:将一个.变成o。问在一段连续的区间内,需要进行多少次操作才可以将同一行或同一列中的连续\(k\)个数都变为o,若无法完成,输出-1。思考过程看......
  • AT_abc337_c的题解
    AT_abc337_c的题解题目大意就是给你一个数组$a=(a_1,a_2,\ldots,a_n)$,若$a_i$为$-1$,那么这个数的下标就是输出序列的开头,否侧,这个数在输出序列中排在$a_i$的下一个。思考过程从样例中不难发现:$1,2,\ldots,n$中的每一个数最多在$a$中出现一次;输出序列中的每一个......
  • ABC337 E Bad Juice 题解
    QuestionABC337EBadJuice交互题\(n\)瓶果汁中有\(1\)瓶是坏的,现在需要把这些果汁分给\(m\)个人,每个人可以喝任意瓶,然后通过\(m\)个人的回复判断哪一瓶是坏的需要输出最小的\(m\)以及坏果汁的编号Solution\(m\)返回的结果由\(01\)构成,自然而然想到二进制,考虑......