Contest Info


Practice Link

Solved A B C D E F G H I J K L
9/12 O - Ø O - O O O O O - O
  • O 在比赛中通过
  • Ø 赛后通过
  • ! 尝试了但是失败了
  • - 没有尝试

Solutions


Problem A. Edit Distance

题意:
给出一个\(01\)字符串\(S\),要求构造一个字符串\(T\),使得\(S\)和\(T\)的编辑距离大于\(\frac{|S|}{2}\)

思路:

  • 如果\(S\)中\(0\)和\(1\)的个数不同,那么全都放个数少的那个数。
  • 如果\(0\)和\(1\)的个数相同,那么第一位放和\(S\)的第一位相反的,其余的放和\(S\)的第一位相同的

Problem C. Smart Thief

题意:
要求构造一个字符串\(S\),使得它的字符集大小为\(M\),并且至少有\(k\)个长度为\(n\)的本质不同的子串。
输出构造方案,使得\(S\)的长度最小。

思路:
我们考虑\(S\)的长度为\(n + k - 1\)
我们考虑长度为\(n\),字符集大小为\(M\)的字符串,本质不同的一共有\(M^n\)种。
如果\(M^n\)很大,那么我们考虑如下做法:

  • 先随机放置\(n - 1\)个字符,然后考虑第\(n\)个字符
  • 我们枚举第\(n\)个字符,选择这\(n\)个字符的后\(n - 1\)个字符为前缀的长度为\(n\)的字符串的出现次数最少的来放
  • 这样后面的字符能接下去的概率很高,就很容易构造出长度为\(n + k - 1\)的字符。

再考虑\(M^n\)的数量级和\(k\)差不多大的时候,这个时候我们用上述算法可能是行不通的。
因为当\(M^n = k\)的时候,可能构造方式很少。
但是我们可以考虑,一个长度为\(n\)的字符串,它实际上连接了两个长度为\(n - 1\)的前缀。
我们把这样一个长度为\(n\)的字符串看成一条边,可以发现每个长度为\(n - 1\)的前缀都有\(m\)条出边和\(m\)条入边。
现在相当于要找一条长度为\(k\)的欧拉路径,显然存在。

Problem D.Icy Land

题意:
在一个\(n \cdot m\)的图中,'.'表示是冰块,'#‘表示是干的地方。
如果碰到冰块,那么会继续沿当前方向滑下去,除非遇到墙壁,则会停下来。
如果遇到干的地方,便会停下来,然后可以选择一个方向继续前进。
现在询问至少要将多少个'.'变成'#',使得不管从任意位置出发,都可以在每个位置停留下来。

思路:
考虑没有靠墙的冰块都要变干
再考虑外面一圈的情况(不包括四角),至少要有一块干的地方,不然从外面一圈出发的时候就进不到中间区域,只能在外面绕圈圈

Problem F. Popping Balloons

题意:
有两个人\(A, B\),参加一场算法竞赛。
一共有\(n\)道题目,比赛时长\(m\)分钟,他们知道各自完成每道题需要的时间\(a_i, b_i\)。解决一题后会获得一个气球。
现在\(A\)可以骚扰\(B\),当\(A\)获得气球后,它可以选择让气球爆炸来骚扰\(B\)。
当气球爆炸的时候,\(B\)手中正在做的题目会前功尽弃,需要从头开始做。
现在问是否有一种放气球的方案使得\(A\)最终做出的题目严格大于\(B\)的。

思路:
我们尽量想让\(B\)浪费尽可能多的时间。
首先我们知道\(A\)能做多少题,假设为\(p\)。
那么对于\(B\),最多让他做\(p - 1\)道题。
那么我们找到\([1, p]\)中所需时间最长的题,然后将之前所获得的气球全都在这道题快做完的时候放掉。
然后继续找下一个所需时间最长的题,放掉这段时间获得的气球。
这样可以保证浪费\(B\)的时间是最多的。

Problem G. Go Make It Complete

题意:
有\(n\)个点, \(m\)条边的无向图,现在需要选择一个\(k\),然后将没有在图里的边按某种顺序列举出来,然后按顺序判断,如果当前这条边相邻的两个点的度数之和大于等于\(k\),那么就将这条边加入图中。
只要存在某种顺序使得所有边都能加进去,那么这个\(k\)是好的。
现在需要找一个最大的\(k\),并且满足这个\(k\)是好的。

思路:
二分\(k\),然后暴力判断,跑不满。

Problem H. Lexical Sign Sequence

题意:
有\(n\)个数\(a_i \in [-1, 1]\),如果是\(-1\)或者\(1\)表明\(a_i\)是确定的,否则表示你可以选择填\(-1\)或者\(1\)。
现在有\(k\)条限制,你需要满足\(\sum\limits_{i = l}r a+i \geq c\)。
问满足所有限制的条件下,字典序最小的\(a\)是什么。

思路:
先全部放\(1\),然后判是否是\(impossible\).
然后将每个限制条件放在\(r\)处\(check\),如果不满足,那么倒着往左跳\(0\)的位置,改成\(1\)。
链表维护一下。

Problem I. Lie Detector

Problem J. Future Generation

题意:
现在有\(n\)个字符串,对于每个字符串可以选择一个它的子序列,使得选择出的\(n\)个子序列按字典序是单调递增的。
问满足条件的\(n\)个子序列的最大长度和。

思路:
暴力跑出\(n\)个字符串的所有子序列,然后两层之间双指针枚举一下。

Problem L. Binary String

题意:
给出一个二进制串\(S\),和一个\(k\)。
现在问最少删除\(S\)中多少个字符,使得它小于等于\(k\)

思路:
最左边的\(1\)不能动。
然后考虑第二个\(1\)开始,慢慢删。
如果\(1\)全删光了,\(0\)随便删

Asia-Jakarata 2018的更多相关文章

  1. (Access denied for user 'root'@'slaver1' (using password: YES))

    1.问题描述,启动azkaban的时候报如下所示的错误.之前使用azkaban是root用户,今天使用hadoop用户进行配置和使用,报这个错,说是root连接mysql拒绝了. [hadoop@sl ...

  2. Hadoop生态圈-CentOs7.5单机部署ClickHouse

    Hadoop生态圈-CentOs7.5单机部署ClickHouse 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 到了新的公司,认识了新的同事,生产环境也得你去适应新的集群环境,我 ...

  3. 2018 ACM-ICPC Asia Beijing Regional Contest (部分题解)

    摘要 本文主要给出了2018 ACM-ICPC Asia Beijing Regional Contest的部分题解,意即熟悉区域赛题型,保持比赛感觉. Jin Yong’s Wukong Ranki ...

  4. The 2018 ACM-ICPC Asia Qingdao Regional Contest(部分题解)

    摘要: 本文是The 2018 ACM-ICPC Asia Qingdao Regional Contest(青岛现场赛)的部分解题报告,给出了出题率较高的几道题的题解,希望熟悉区域赛的题型,进而对其 ...

  5. The 2018 ACM-ICPC Asia Qingdao Regional Contest

    The 2018 ACM-ICPC Asia Qingdao Regional Contest 青岛总体来说只会3题 C #include<bits/stdc++.h> using nam ...

  6. 2018 ICPC Asia Singapore Regional A. Largest Triangle (计算几何)

    题目链接:Kattis - largesttriangle Description Given \(N\) points on a \(2\)-dimensional space, determine ...

  7. ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction hihocoder1870~1879

    ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction hihocoder1870~1879 A 签到,dfs 或者 floyd 都行. #i ...

  8. The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online J - Press the Button(思维)

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4056 题意 有一个按钮.一个灯.一个计时器和一个计数器,每按一次按钮,计时 ...

  9. 【Asia Yokohama Regional Contest 2018】Arithmetic Progressions

    题目大意:给定 N(1<N<=5000) 个不同元素组成的集合,求从中选出若干数字组成的等差数列最长是多少. 题解:直接暴力有 \(O(n^3)\) 的算法,即:枚举等差数列的前两个值,再 ...

  10. The 2018 ACM-ICPC Asia Beijing Regional Contest

    http://hihocoder.com/problemset/problem/ #1870 : Jin Yong’s Wukong Ranking List 我是每加1个点就dfs判断1次. 正解是 ...

随机推荐

  1. k8s系列0--Kubernetes基础知识

    Kubernetes介绍 参考:Kubernetes核心组件解析 Pod是k8s的最小调度单元 每个pod有独立的IP,但是pod的IP是不可靠的,重新调度pod就会改变IP,service概念就是为 ...

  2. C#基础--Virtual与abstract区别、重写

    Virtual作用:子类可以对父类重写,虚方法是对多态特征体现.代表一类对象的所具有的公共属性或方法. public class Animal { public string Name { get; ...

  3. 通过Kubeadm搭建Kubernetes集群

    历经断断续续学习的两天,终于完成了一个简单k8s集群. 参考 https://www.cnblogs.com/edisonchou/p/aspnet_core_on_k8s_deepstudy_par ...

  4. MySQL5.6.11安装步骤(Windows7 64位)

    1. 下载MySQL Community Server 5.6.21,注意选择系统类型(32位/64位) 2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下. 3. 添加环境变量 ...

  5. background 背景图片 --css3

    background 1.设置背景平铺background-repeat round :图片会进行缩放后平铺space : 图片会进行平铺,中间留下空白空间 注:当滚动行为设为fixed,round和 ...

  6. vue路由(一)

    “vue.js 路由允许我们通过不同的 URL 访问不同的内容.通过 Vue.js 可以实现多视图的单页Web应用(single page web application,SPA)”这段是从网上直接抄 ...

  7. 5.Redis的持久化

    Redis中数据的持久化有两种方式:RDB(Redis DataBsse) 和 AOF(Append Only File),默认采取的是RDB方式 RDB 1.是什么:在指定的时间间隔内将内存中的数据 ...

  8. man 手册--nc

    man 手册--nc NCAT(1) Ncat Reference Guide NCAT(1) NAME ncat - Concatenate and redirect sockets SYNOPSI ...

  9. linux添加地址映射

  10. 机器学习中的数学-强大的矩阵奇异值分解(SVD)及其应用

    版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gm ...