agc007 vp记录

  • [AGC007A] Shik and Stone

有一个纵 H 行,横 W 列的格子状棋盘。开始时,棋盘左上角的格子有一个马(不是象棋意义的马)。Shik 将会操纵它上下左右移动,从而到达右下角的格子。此时,马能够经过同一个格子多次(含左上角和右下角的格子)。

给出 H 行字符串,如果第 i 行第 j 列的字符为 ' # ' ,则表示马在移动过程中至少通过了此格一次(左上角和右下角的格子一定会通过至少一次)。当 ai,j 为 ' . ' 时,表示马在移动过程中并没有经过此格。

请判断:马是否可能每次移动都向下或向右。

 
签到题。


  • [AGC007B] Construct Sequences

给你一段长度为n的数列P1,P2,,Pn.
让你构造两个新的数列a与b,且满足:

  1. 1<ai,bi<10^9
  2. a1<a2<…<an
  3. b1>b2>…>bn
  4. ap1+bp1<ap2+bp2<…<apn+bpn
    求出满足条件的数列a,b;

 

考虑经典构造思路:先使其满足其中一个条件且另一个条件全部相等,再微调构造。
于是将 ai 赋值为 n×ibi 赋值为 n×(ni)
微调则将 pia 加上 i1


  • [AGC007C] Pushing Balls

在一条直线上有 N 个球和 N+1 个洞。记每个球与相邻的洞的距离为 di(1i2×N)di+1di=x

要将 N 个球均推入洞中。当球滚过洞时,如果洞中还没有球,球将掉入洞中。否则,球将继续滚动。

每次会随机选择任一未进洞的球,并随机选择一个方向推球。

给定 N,d1,x ,求出在不发生碰撞的情况下,每个球移动距离的期望(误差小于 109
 
神秘题,赛时看到就直接跳了。
有严格推导和打表的做法,打表直接发现每次的期望都构成等差数列可以直接解决。
严格推导则是算出每一段下一次的期望是多少,这里不证了。


  • [AGC007D] Shik and Game

Shik君在玩一个游戏。

初始时他在数轴的0位置,出口在E位置,并且数轴上还有n只小熊,第i只小熊在xi位置。

Shik君拿着n块糖果出发,每走一个单位长度要花费一秒。到一个小熊的位置时,他可以送给这个小熊一块糖果,这个过程不花时间。小熊收到糖果后,T秒以后会在它所在的位置产生一个金币。

Shik君想知道,他从出发到收集了所有金币抵达出口,最少要花费多长时间。

 

简单队列优化DP,赛时读错题认为T不同于是不可做。


  • [AGC007E] Shik and Travel

题意都没看懂,长大后再学习。


  • [AGC007F] Shik and Copying String

Shikk的工作是复制。有一天,Shikk从他的上司那里拿到了一个由小写英文字母组成的长度为N的字符串S0(假设这天是第0天)。这之后第i天的工作是把Si1复制到Si。下文中的Si[j]表示字符串Si的第j个字母。

Shikk还不怎么习惯这个工作。每天,当Shikk从第一个字母开始按顺序复制字符串时,他有可能会写下和刚刚写下的字母相同的字母,而不是本来应该写下的字母。也就是说,Si[j]要么与Si1[j]相同,要么与Si[j1]相同。(特别地,字符串开头的字母不可能出错。也就是说,Si[1]必然与Si1[1]相同。)

输入两个字符串S0T,请求出使得Si有可能与T相同的最小的整数i。如果这样的i不存在,请输出“-1”。

 
考虑将字符往后推的表建出来。
image
我们要贪心地去填表,即每次都要尽量靠右填。同时发现每个拐点都会向左下移动一格,于是用队列维护每个拐点。
答案即每一时间中 (队列长度 + 1)的最大值。

posted @   flywatre  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示