Difference between revisions of "2019 CCPC Final"

From EOJ Wiki
Jump to navigation Jump to search
(Created page with "== Replay == Xiejiadong: Kilo_5723: Weaver_zhu: == Problem A == Solved by Kilo_5723. 00:55 (+2) == Problem B == Unsolved. == Problem C == Solved by Weaver_zhu. 00:46...")
 
 
(12 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
 
Xiejiadong:
 
Xiejiadong:
 +
 +
* 周五太浪,周六讲座,赛前无练习,然后就丢脸了
 +
* 周六热身赛就丢了个大脸
 +
* 正赛一个半小时就没题做了,菜的真实
 +
* 是不是周五中了个旷世的鼠标垫,用光了比赛需要的 RP 。
  
 
Kilo_5723:
 
Kilo_5723:
 +
 +
* 没得彻底。
 +
* 发现一个妙的不行的结论,以为 E 做出来了,原来又双叒叕只解决了第一部分。
  
 
Weaver_zhu:
 
Weaver_zhu:
Line 9: Line 17:
 
== Problem A ==
 
== Problem A ==
  
Solved by Kilo_5723. 00:55 (+2)
+
Solved by Xiejiadong. 00:20:45 (+1)
 +
 
 +
自定义排序签到。
  
 
== Problem B ==
 
== Problem B ==
Line 17: Line 27:
 
== Problem C ==
 
== Problem C ==
  
Solved by Weaver_zhu. 00:46 (+)
+
Unsolved.
  
 
== Problem D ==
 
== Problem D ==
Line 25: Line 35:
 
== Problem E ==
 
== Problem E ==
  
Solved by Weaver_zhu. 02:30 (+)
+
Unsolved. (-13)
  
 
== Problem F ==
 
== Problem F ==
  
Solved by Xiejiadong. 01:26 (+)
+
Unsolved.
  
题意:给出 $x$ 求任意一组解满足 $a^3+b^3+c^3=x$ 且 $|a|,|b|,|c|\le 5\cdot 10^3,0\le x\le 200$ 。
+
== Problem G ==
  
题解:考虑预处理出所有 $|a|,|b|\le 5\cdot 10^3$ 的情况,枚举所有的 $x$ ,再枚举 $c$ ,判断是否存在这样的 $a,b$ 。
+
Unsolved.
  
直接用 map 是不大行的,无论是时间复杂度还是内存上本地都跑不出来,差点电脑死机了。
+
== Problem H ==
  
考虑用数组存下所有的情况,排序以后,再在其中二分。
+
Unsolved.
  
打表直接输出即可。
+
== Problem I ==
  
== Problem G ==
+
Solved by Kilo_5723. 01:37:08 (+)
  
Unsolved.
+
题意:有 $n$ 个颜色的方块,每两个颜色(可以相同)可以组成一个大块,总共有 $\frac{n \cdot (n+1)}{2}$ 种不同的大块,现在每种大块取一个,要求构造一个三维放置方案,使得每个颜色的小块互相连通。大块只能放置在整点上。
  
== Problem H ==
+
题解:$n=6$ 时构造如下:
  
Solved by Kilo_5723. 03:57 (+1)
+
第一层:
 +
1 1 1 1 1 1
 +
  2 2 2 2 2
 +
    3 3 3 3
 +
      4 4 4
 +
        5 5
 +
          6
 +
第二层:
 +
1 2 3 4 5 6
 +
  2 3 4 5 6
 +
    3 4 5 6
 +
      4 5 6
 +
        5 6
 +
          6
  
== Problem I ==
+
其中第一层和第二层对应位置上的方块构成一个大块。
 
 
Unsolved.
 
  
 
== Problem J ==
 
== Problem J ==
  
Unsolved. (-5)
+
Unsolved. (-2)
  
 
== Problem K ==
 
== Problem K ==
  
Unsolved.
+
Solved by Xiejiadong. 00:55:06 (+)
 +
 
 +
题意:求每一个子树里面所有的节点编号构成了多少个联通块。
 +
 
 +
题解:每一个子树用 set 维护节点编号。
  
== Problem L ==
+
暴力插入编号以后判断左右联通性,求出联通块数量。
  
Solved by Xiejiadong. 03:24 (+)
+
直接启发式合并,就过去了。
  
题意:给出一棵树,树上每个节点都有一个字母,每次可以选择一个节点,从它开始向他的父节点走,沿路记下字母。
+
== Problem L ==
  
每次询问给出一个节点以及走的步数,求整棵树上可以走出多少这样的字符串。
+
Solved by Kilo_5723. 00:36:34 (+1)
  
题解:考虑如果对于每一个节点变成向他的孩子走,题目就转换成了后缀的问题。
+
题意:从矩阵的任意点出发,每次前进只能向右拐至多一次,问有多少种不同的路线能经过每个格子恰好一次。
  
如果能够处理出来所有节点往下走的字符串,建立 SAM ,在其中做子串定位以及统计当前子串状态出现的次数就好了。
+
题解:由于路线的性质,要么从外面一圈一圈绕到里面,要么从里面一圈一圈绕到外面,要么由两个绕成圈的路线在边界上组合。
  
考虑到这是一个树,每次记录当前节点对应在广义 SAM 的节点编号,回溯的时候,暴力的跳父亲的 SAM 节点,在 insert 即可。
+
特判了长条的情况后,发现前两种情况可以合并到第三种,答案是 $2n+2m-4$。

Latest revision as of 09:07, 21 November 2019

Replay

Xiejiadong:

  • 周五太浪,周六讲座,赛前无练习,然后就丢脸了
  • 周六热身赛就丢了个大脸
  • 正赛一个半小时就没题做了,菜的真实
  • 是不是周五中了个旷世的鼠标垫,用光了比赛需要的 RP 。

Kilo_5723:

  • 没得彻底。
  • 发现一个妙的不行的结论,以为 E 做出来了,原来又双叒叕只解决了第一部分。

Weaver_zhu:

Problem A

Solved by Xiejiadong. 00:20:45 (+1)

自定义排序签到。

Problem B

Unsolved.

Problem C

Unsolved.

Problem D

Unsolved.

Problem E

Unsolved. (-13)

Problem F

Unsolved.

Problem G

Unsolved.

Problem H

Unsolved.

Problem I

Solved by Kilo_5723. 01:37:08 (+)

题意:有 $n$ 个颜色的方块,每两个颜色(可以相同)可以组成一个大块,总共有 $\frac{n \cdot (n+1)}{2}$ 种不同的大块,现在每种大块取一个,要求构造一个三维放置方案,使得每个颜色的小块互相连通。大块只能放置在整点上。

题解:$n=6$ 时构造如下:

第一层:

1 1 1 1 1 1
  2 2 2 2 2
    3 3 3 3
      4 4 4
        5 5
          6

第二层:

1 2 3 4 5 6
  2 3 4 5 6
    3 4 5 6
      4 5 6
        5 6
          6

其中第一层和第二层对应位置上的方块构成一个大块。

Problem J

Unsolved. (-2)

Problem K

Solved by Xiejiadong. 00:55:06 (+)

题意:求每一个子树里面所有的节点编号构成了多少个联通块。

题解:每一个子树用 set 维护节点编号。

暴力插入编号以后判断左右联通性,求出联通块数量。

直接启发式合并,就过去了。

Problem L

Solved by Kilo_5723. 00:36:34 (+1)

题意:从矩阵的任意点出发,每次前进只能向右拐至多一次,问有多少种不同的路线能经过每个格子恰好一次。

题解:由于路线的性质,要么从外面一圈一圈绕到里面,要么从里面一圈一圈绕到外面,要么由两个绕成圈的路线在边界上组合。

特判了长条的情况后,发现前两种情况可以合并到第三种,答案是 $2n+2m-4$。