A. Another Query on Array Problem


B. Board Covering


C. Cumulative Sums

题意

  • \(A_1=1,A_i=A_{i-1}+sod(A_{i-1}),sod(X)\)为\(X\)的十进制数位和
  • \(S_n=\sum_{i=1}^{n}A_i\),求\(S_n\)模\(10^9+7\),\(n≤10^{15}\)

做法

  • 先考虑怎么求\(A_n\)的值
  • 初步想法:把\(A_i\)拆成高位和低位,设高位为\(X\),固定高位,那么对低位的影响就是每次多加了个\(sod(X)\),直到加到对高位有进位时,\(sod(X)\)发生了改变。可以把低位调大点使得每次只会向高位进位一个1,因为\(sod(X)\)很小,所以可以dp出所有状态,即\(dp[i][j]\)表示低位为\(i\),\(sod(X)\)为\(j\),一直加到向高位进位为止转移的次数以及进位之后的低位是哪个数。这样高位可以O(1)转移了,然而这样复杂度还是非常高。
  • 比赛时思路就卡在了这里,认为如果继续对高位再拆分成若干段的话,那么对于每一段,我需要dp的时候记录所有低位的值,那么状态数其实和不拆分是一样的,没什么卵用
  • 其实分析一下就会发现,我们并不需要记录低位的所有可能的值,只需要记录刚进位之后低位的值就可以转移了呀,这样每一段状态数就很少了,为啥没想到。。。
  • 于是直接把低3位划分成一段,其他每一位一段就好了,求和的话多记录个和就好了

D. Delicious Bubble Tea

签到


E. European Trip

做法

  • 可以费马点。但不会。
  • 三分套三分。

F. Familiar Digit

  • 思路挺直接的一个经典的数位dp,但是调了比较久,有点蠢

G. Ginger Candy

做法

  • 注意到数据范围。
  • 只需考虑最小生成树权值前 2 小的非树边。

H. Nim Cheater

题意 n 堆石头,选择至多 n-2 堆石头,每堆石头弃置若干个,求 xor 等于 0 方案数。

做法

  • 只需造轮子求满足 \(0\leq x_i\leq a_i\),xor 和为 k 的 x 序列方案数,就无敌了。抓着轮子求【总的方案数】-【都不相等的方案数】-【恰有一堆相等的方案数】即可。
  • 怎么造轮子?
  • 从高位到地位逐位考虑,当前在考虑第 B 位,考虑这位上为 1 的所有数字,如果某个数字在这位(第 B 位)设为了 0,那么其它数字的第 B-1 至第 0 位可以乱填,第 B 位乱填不得,我们来做个简单的 DP。
    • \(f[i][0/1]\) 表示考虑确定下前 \(i\)个(第 B 位为 1的)数字,其中奇数/偶数个数字第 B 位填 1 的方案数。
    • 第 B 位全填 1 是不可取的!因为至少得保证有一个填 0。
    • 全填 1 递归到下一层解决。

I. Integer Rotation


J. Jewelry Box

做法 求导,求极值。


K. Keep the Parade Safe

  • 求一下严格凸包,对严格凸包只有三个点的情况分类讨论

L. Let's Play Monopoly!

  • 赛中:好难,不可做
  • 赛后:怎么他们AC代码长度只有800?再好好想想!
  • 自闭若干小时后:tmd读错题了吧!
  • 重读了一遍题之后:题意没毛病啊?咋回事啊?
  • 瞅了眼数据范围:\(u_i<v_i\),没环,SB题

HYNB Contest 7:2017 Asia HCMC Vietnam National Programming Contest的更多相关文章

  1. Codeforces Gym101606 A.Alien Sunset (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))

    2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017) 寒假第一次组队训练赛,和学长一起训练,题目难度是3颗星,我和猪队友写 ...

  2. 2017, X Samara Regional Intercollegiate Programming Contest 题解

    [题目链接] A - Streets of Working Lanterns - 2 首先将每一个括号匹配串进行一次缩减,即串内能匹配掉的就匹配掉,每个串会变成连续的$y$个右括号+连续$z$个左括号 ...

  3. 最长上升子序列:2016 Pacific Northwest Region Programming Contest—Division 2 Problem M

    Description A string of lowercase letters is calledalphabeticalif deleting zero or more of its lette ...

  4. 2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017)

    A. Alien Sunset 暴力枚举答案即可. #include<cstdio> int n,i,mx; struct P{ int h,r,t; bool night(int x){ ...

  5. 2019.04.11 第四次训练 【 2017 United Kingdom and Ireland Programming Contest】

    题目链接:  https://codeforces.com/gym/101606 A: ✅ B: C: ✅ D: ✅ https://blog.csdn.net/Cassie_zkq/article/ ...

  6. [寒假集训第一场]gym101606 2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017)

    3星场 难度在于英文题面太难读懂了QAQ 看样例猜题意的我 博客园的c++主题真丑 A Alien Sunset \(description\) 有\(n\)个星球,每个星球自转时间不一样,所以一天的 ...

  7. Codeforces Gym101606 C.Cued In (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))

    C Cued In 这个题是打球的.都忘了写的什么了... 代码: 1 #include<iostream> 2 #include<cstring> 3 #include< ...

  8. Codeforces Gym101606 J.Just A Minim (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))

    J Just A Minim 超级无敌大水题,但是被精度卡了一手,输出要精确到小数点后6位,我直接输出的... 代码: 1 #include<iostream> 2 #include< ...

  9. Codeforces Gym101606 I.I Work All Day (2017 United Kingdom and Ireland Programming Contest (UKIEPC 2017))

    I I Work All Day 这个题就是取模找最小的. 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include< ...

随机推荐

  1. mui框架页面每次加载操作

    最近在优化自己用mui开发的app,主要还是针对交互这块儿,这里简单给大家说一下问题点场景,就是我是通过动态添加底部tabBar的方法创建了一个底部可以切换的操作区域,代码如下: mui.init() ...

  2. Flume详解

    Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据.它具有基于流数据流的简单灵活的架构.它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错性.它使用简单的可扩 ...

  3. Java习题10.25

    Java习题10.25 1. 实际上这道题考查的是两同两小一大原则: 方法名相同,参数类型相同 子类返回类型小于等于父类方法返回类型, 子类抛出异常小于等于父类方法抛出异常, 子类访问权限大于等于父类 ...

  4. Java-Class-I:java.util.List

    ylbtech-Java-Class-I:java.util.List 1.返回顶部 1.1.import java.util.ArrayList;import java.util.List; 1.2 ...

  5. org.apache.hadoop.hbase.PleaseHoldException: Master is initializing

    电脑换了重新装了下系统,在本机ubuntu 的环境下搭建hadoopCDH4.5 伪分布式.进入Hbase shell,在创建表的时候出现异常如下: ERROR: org.apache.hadoop. ...

  6. 一点响应式Web设计与实现思路

    摘要: 是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理 ...

  7. spring MVC 全局的异常处理

    1.使用SimpleMappingExceptionResolver实现异常处理 在Spring的配置文件applicationContext.xml中增加以下内容: <bean class=& ...

  8. windows使用cmd查看、杀死进程

    查看某个进程: netstat -ano | findstr  端口号 杀死某个进程: taskkill /f  /pid  进程号

  9. DEV的GridControl控件的选中列属性设置高光

    设置Run Designer=>Views=> OptionsSelection下面的: EnableAppearanceFocusedCell = False,//鼠标移开,失去焦点,仍 ...

  10. django静态文件的配置

    Django static静态配置文件   对于Django来说静态文件一般交由Web服务器处理,Django本身不处理静态文件.为了使Django开发环境能够处理静态文件,Django有和生产环境不 ...