10.24闲话

588 words

10.24 闲话

祝所有程序员 加班节 程序员节快乐(虽然我不是)。

日寄

上午阿巴阿巴,切了一堆随的题,讲究就是一个随到会的就做,随到不会的一眼过。

感觉机房里乐子越来越少,emo 越来越多了。

中午阔别了一天的某人回机房拿走了他的所有物品。

为啥我感觉考完 CSP 就跑路的那几个人都是比我强的 /kk。或许命运如此吧,whk 又将是新的天地,祝好。

想起我学 whk 的日子了,那时虽然老是觉得作业多,考试砸,还得惦记 OI,但那会儿每天还能发自真心地笑出来。

下午阿巴阿巴,找 wangk 谈了谈,想每个晚自习回去学文化课,wangk 说 noip 后会统一安排。行,就这样吧。

过得好恍惚。

等 HE 迷惑行为赏。

我推の歌

没听歌,但还有库存。

In Hell We Live, Lament

In this inferno (Inferno)

We built for ourselves

Reviving each other in this hell

World execute(me);

Though you're free I'm still trapped in love.

口题解

AT_arc128_e K Different Values

一个位置一个位置添加元素,记 \(m\) 为需要构造的序列长度,即 \(\sum A_i\),把序列划分,每段长 \(k\)(还可能有一个剩余段),记划分段数(包括剩余段)即 \(\left \lceil \frac{m}{k} \right \rceil\)\(t\),若有 \(A_i>t\) 直接无解;若有 \(A_i=t\),说明该元素必须出现在每一段,包括剩余段,选择其中最小的 \(i\) 填到第一个位置;若所有 \(A_i\) 均小于 \(t\),选择最小的 \(i\) 填到第一个位置。这时我们将问题递归为了要构造一个长 \(m-1\) 的序列,以此类推。

UVA1347 旅行 Tour

首先将原问题进行转化,转化为两个人从左向右走,都是从 \(1\)\(n\) 但途径的点不能重合,求最小路程。设 \(f_{i,j}\) 表示前 \(\max(i,j)\) 个点已经被走过,第一个人走到 \(i\),第二个人走到 \(j\) 的最小路程。不妨强制使 \(i>j\),倒序转移,记两点间距离为 \(d(i,j)\),得到方程:

\(f_{i,j}=\min(f_{i+1,j}+d(i,i+1),f_{i+1,i}+d(j,i+1))\)

初始化所有 \(f_{n-1,i}\)\(d(n-1,n)+d(i,n)\),最终答案为 \(f_{2,1}+d(1,2)\)

Comments