2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest

A - Arranging Wine

题目描述:有\(R\)个红箱和\(W\)个白箱,将这些箱子分成若干堆,使得每一堆只有一种颜色,然后将这些堆排成一排,使得相邻的堆的颜色不一样,并且每堆红箱的个数不能超过\(d\),问有多少种方案。

solution
不会。

B - Barcode

题目描述:有一排\(n\)个球,现在要给这\(n\)个球涂成红色或蓝色,使得红色球的个数等于蓝色球的个数,或者没有两个连续的蓝球,问有多少种方案。

solution
第二个条件的方案可以\(dp\)算出,而第一个条件的方案是\(C_{n}^{n/2}\),最终答案为两种条件的方案相加减去重复的\(\frac{n}{2}+1\)。
\(C_{n}^{n/2}\)要用模意义下的组合数来求。

时间复杂度:\(O(n)\)

C - Cu Chi Tunnels

题目描述:给出\(n\)个点的度,构造一棵树使得每个点的度满足所给的点,而且从根到每个点的路径的点编号递增。问能否构造这棵树。

solution
显然\(1\)是根,除了\(1\)外每个点的度减一就是儿子数。编号从大到小构造儿子,当儿子数不够时,无解,否则有解。

时间复杂度:\(O(n)\)

D - Dropping Ball

题目描述:给出一个\(m \times n\)的网格图,每个格子是''或者'/'。有两种操作:1、问从第一行第\(k\)列上方放一个球,问这个球能不能从最后一行掉出去,如果能,则输出从那一列掉出去。 2、修改某一个格子的符号,从''变成'/',或者相反。操作总数为\(q\)。

solution
当\(m \leq 1000\)时,每次询问直接暴力模拟。
当\(m > 1000\)时,\(n < 100\)。所以可以用线段树维护转移表。区间\([L, R]\)的点为一个转移表\(jump[i]\),表示当一个球到了第\(L\)行第\(i\)列,它会从第\(R\)行第\(jump[i]\)列掉出去。

时间复杂度:\(O(qnlogm)\)

E - Engaging with Loyal Customers

题目描述:有\(n\)个人,\(m\)份礼物,每个人对每份礼物有一个好感值,问如何分配礼物(一个人只能有一份礼物)使得每个人的好感值的和最大。

solution
当礼物较少时补足礼物,使得问题变成一个完美匹配的问题,然后用KM解决。

时间复杂度:远小于\(O(n^3)\)

F - Famous Pagoda

题目描述:有一个\(n\)个元素的序列\(a_i\),将其分成\(m\)段,给定一个数\(k=1 or 2\),每一段的值为\(min_{v \in \mathbb{Z}} \sum_{s=i}^{j} \left | a_s-v \right | ^k\),输出每一段的值的总和的最小值。

solution
\(f[i][j]\)表示前\(i\)个数分成\(j\)段的最小值,显然(信仰)当\(i\)一定,\(j\)递增,决策\(k\)也递增,所以直接\(n^2\)dp

时间复杂度:\(O(n^2)\)

G - Game of Divisibility

题目描述:有\(n\)个数\(a_i\)和一个数\(k\),现在有两个人轮流从\(n\)个数中取数,每次取一个,直到所有的数取完。最终谁取的数的和是\(k\)的倍数,谁就获胜,否则平手。输出在最优策略下的最终结果。

solution
不会

H - Height Preservation

题目描述:有一个\(m \times n\)的网格图,每个格子有一个数\(h_{ij}\),现在给每个格子取一个数\(s_{ij}\),满足在每一行\(i\),若\(h_{ij}=h_{ik}\),则\(s_{ij}=s_{ik}\), 若\(h_{ij}>h_{ik}\),则\(s_{ij}>s_{ik}\),以及在每一列也同样满足类似行满足的条件,问\(s\)不同数字最少有多少个。

solution
将相等的点缩点,不相等的点连边,然后求最长路。

时间复杂度:\(O(n)\)

I - ICPC Awards

题目描述:按照排名顺序给出\(n\)支队伍的学校名与队名,然后每间学校只保留排名最前的队伍,最后输出前\(12\)支队伍。

solution
模拟

J - Joining Networks

题目描述:一个有\(n\)台电脑的网络构成一棵树,两台电脑的传输花费为两台电脑的距离的平方,一个网络的传输花费为所有无序电脑对的传输花费总和。现有两个两个网络,添加一条边使得这两个网络连通且连通后的网络的传输花费最少,输出最小值。

solution
不会。

K - K-Rotating

题目描述:有\(n\)个老师,\(n\)个班,开始时第\(i\)个老师交第\(i\)个班,接下来有\(m\)个修改操作,每次操作选择第\(x\)个星期,在第\(x\)星期的开始,选择\(k\)个老师\(p_1, p_2, ..., p_k\),然后老师\(p_i\)转为教老师\(p_{i+1}\)教的班,\(p_n\)教\(p_1\)教的班。在这修改操作期间还有一些询问操作,问第\(k\)个老师在第\(x\)个星期的星期二教哪一个班。

solution
分块,暴力维护每一块的置换,暴力修改,暴力询问。

时间复杂度:\(O(q \sqrt{m})\)

L - Land Inheritance

题目描述:给出一个多边形以及一条直线,将多边形沿直线对折,求重叠部分的面积。

solution
听说是一个模板:面积交的面积。

时间复杂度:\(O(n)\)

2017 ACM - ICPC Asia Ho Chi Minh City Regional Contest的更多相关文章

  1. 2017 ACM/ICPC Asia Regional Shenyang Online spfa+最长路

    transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 132768/1 ...

  2. 2017 ACM ICPC Asia Regional - Daejeon

    2017 ACM ICPC Asia Regional - Daejeon Problem A Broadcast Stations 题目描述:给出一棵树,每一个点有一个辐射距离\(p_i\)(待确定 ...

  3. 2017 ACM/ICPC Asia Regional Qingdao Online

    Apple Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submi ...

  4. HDU - 6215 2017 ACM/ICPC Asia Regional Qingdao Online J - Brute Force Sorting

    Brute Force Sorting Time Limit: 1 Sec  Memory Limit: 128 MB 题目连接 http://acm.hdu.edu.cn/showproblem.p ...

  5. 2017 ACM/ICPC Asia Regional Shenyang Online transaction transaction transaction

    Problem Description Kelukin is a businessman. Every day, he travels around cities to do some busines ...

  6. 2017 ACM/ICPC Asia Regional Shenyang Online

    cable cable cable Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  7. 2017 ACM/ICPC Asia Regional Shenyang Online(部分题解)

    HDU 6197 array array array 题意 输入n和k,表示输入n个整数和可以擦除的次数k,如果至多擦除k次能是的数组中的序列是不上升或者是不下降序列,就是魔力数组,否则不是. 解题思 ...

  8. 2017 ACM/ICPC Asia Regional Qingdao Online解题报告(部分)

    HDU 6206 Apple 题意: 给出四个点的坐标(每个点的坐标值小于等于1,000,000,000,000),问最后一个点是否在前三个点组成的三角形的外接圆内,是输出Accept,否输出Reje ...

  9. HDU 6205(尺取法)2017 ACM/ICPC Asia Regional Shenyang Online

    题目链接 emmmm...思路是群里群巨聊天讲这题是用尺取法.....emmm然后就没难度了,不过时间上3000多,有点.....盗了个低配本的读入挂发现就降到2800左右, 翻了下,发现神犇Clar ...

随机推荐

  1. python写BMI指数菜单

    需求: # 1.创建并输出菜单, 菜单是不可变的. 所以使用元组menus = ("1, 录入", "2, 查询", "3, 删除", &q ...

  2. 深入理解JVM一类加载器原理

    我们知道我们编写的java代码,会经过编译器编译成字节码文件(class文件),再把字节码文件装载到JVM中,映射到各个内存区域中,我们的程序就可以在内存中运行了.那么字节码文件是怎样装载到JVM中的 ...

  3. Redis安装配置及使用详解

    1. 简介-两个程序通信,除了socket就是文件了,但是通过磁盘效率太低了,之前的RabbitMQ只是实现了消息的传递,现在要是实现数据的共享(一份数据,可供多人查阅),可以通过缓存实现,一个中间商 ...

  4. BZOJ1264 [AHOI2006]基因匹配Match 【LCS转LIS】

    题目链接 BZOJ1264 题解 平凡的\(LCS\)是\(O(n^2)\)的 显然我们要根据题目的性质用一些不平凡的\(LCS\)求法 这就很巧妙了,, 我们考虑\(A\)序列的每个位置可能匹配\( ...

  5. Active Directory中获取域管理员权限的攻击方法

    Active Directory中获取域管理员权限的攻击方法         译:by  backlion 0x00 前言 攻击者可以通过多种方式在Active Directory中获得域管理员权限, ...

  6. Ciesz się Polską

    SZKOpułPoi at BZOJPA at BZOJONTAK at BZOJ Chinese Solution of Poi

  7. CDOJ--1404

    原题链接:http://acm.uestc.edu.cn/problem.php?pid=1404 分析:定义dp[i][j]表示i位时最左边为j时的情况,那么dp[i][[j]可以由dp[i-1][ ...

  8. php开启压缩gzip

    php服务的开启压缩,节省带宽 看是否开启压缩的网站 http://www.cnblogs.com/GaZeon/p/5421906.html 找到php.ini,修改下面的 ,重启php-fpm z ...

  9. pasty公式

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  10. 基于javaWeb阶段下的Servlet总结

    1. Servlet概述   Servlet是用Java语言编写的服务端的程序,采用request--response模式提供Web服务,并且支持标准ServletAPI,Servlet就一个运行在w ...