「ARC 107A」Simple Math

  Link.

  答案为:

\[\frac{a(a+1)\cdot b(b+1)\cdot c(c+1)}{8}
\]

「ARC 107B」Quadruple

  Link.

  枚举 \(i=c+d\),则 \(a+b=i+k\),乘法原理计数。

「ARC 107C」Shuffle Permutation

  Link.

  由于矩阵内无相等元素,所以行和列的顺序可以直接乘法原理。以对行的排列方案计数为例,并查集维护所有可以交换位置的行,则行的方案为每个集合大小的阶乘之积。列同理。

「ARC 107D」Number of Multisets

  Link.

  我真的傻了啊这题都想不出来。

  DP,令 \(f(i,j)\) 表示 \(n=i,k=j\) 时的答案。利用当 \(i<j\),\(f(i,j)=0\) 的边界,有转移:

\[f(i,j)=f(i,2j)+f(i-1,j-1)
\]

  自行理解。复杂度 \(\mathcal O(nk)\)。

「ARC 107E」Mex Mat

  Link.

  结论:\((\forall i,j>4)(a_{ij}=a_{i-1,j-1})\)。手玩一下可以证明。(

  写的时候可以用 std::vector,这样直接在同一个“数组”上二维下标引用会舒服一点。

  复杂度 \(\mathcal O(n)\)。

「ARC 107F」Sum of Abs

  Link.

  首先考虑把绝对值转化一下,对于一个集合 \(\{a\}\),显然有:

\[|\sum a|=\max\{\sum a,\sum-a\}
\]

  也就是说,一个联通块内的数可以同时取负。

  从数据范围 \(n,m\le300\) 又想到最小割。不妨先获得所有 \(|b_i|\) 的收益,然后建图描述删点的操作。

  一种建图如下(\(b_1\ge 0,b_2<0\),图中 \(i\) 应为 \(2\),抱歉 qwq):

  \(i+\) 表示这个点在联通块中作正贡献,\(i-\) 则相反。割去 \(\langle i+,i-\rangle\) 表示删去点 \(i\)。可以发现,在没有删点的情况下,两个有边相连的点不可能取一正一负,符合要求。

Solution Set -「ARC 107」的更多相关文章

  1. 「ARC 139F」Many Xor Optimization Problems【线性做法,踩标】

    「ARC 139F」Many Xor Optimization Problems 对于一个长为 \(n\) 的序列 \(a\),我们记 \(f(a)\) 表示从 \(a\) 中选取若干数,可以得到的最 ...

  2. Solution -「ARC 104E」Random LIS

    \(\mathcal{Description}\)   Link.   给定整数序列 \(\{a_n\}\),对于整数序列 \(\{b_n\}\),\(b_i\) 在 \([1,a_i]\) 中等概率 ...

  3. Diary / Solution Set -「WC 2022」线上冬眠做噩梦

      大概只有比较有意思又不过分超出能力范围的题叭.   可是兔子的"能力范围" \(=\varnothing\) qwq. 「CF 1267G」Game Relics   任意一个 ...

  4. Solution -「ARC 101D」「AT4353」Robots and Exits

    \(\mathcal{Description}\)   Link.   有 \(n\) 个小球,坐标为 \(x_{1..n}\):还有 \(m\) 个洞,坐标为 \(y_{1..m}\),保证上述坐标 ...

  5. Solution -「ARC 110D」Binomial Coefficient is Fun

    \(\mathcal{Description}\)   Link.   给定非负整数序列 \(\{a_n\}\),设 \(\{b_n\}\) 是一个非负整数序列且 \(\sum_{i=1}^nb_i\ ...

  6. Solution -「ARC 124E」Pass to Next

    \(\mathcal{Description}\)   Link.   有 \(n\) 个人站成一个环,初始时第 \(i\) 个人手里有 \(a_i\) 个球.第 \(i\) 个人可以将自己手中任意数 ...

  7. Solution -「ARC 126E」Infinite Operations

    \(\mathcal{Description}\)   Link.   给定序列 \(\{a_n\}\),定义一次操作为: 选择 \(a_i<a_j\),以及一个 \(x\in\mathbb R ...

  8. Solution -「ARC 126F」Affine Sort

    \(\mathcal{Description}\)   Link.   给定 \(\{x_n\}\),令 \[f(k)=\left|\{(a,b,c)\mid a,b\in[0,c),c\in[1,k ...

  9. Solution -「ARC 125F」Tree Degree Subset Sum

    \(\mathcal{Description}\)   Link.   给定含有 \(n\) 个结点的树,求非负整数对 \((x,y)\) 的数量,满足存在 \(\exist S\subseteq V ...

随机推荐

  1. Centos 修改环境变量

    环境变量文件路径 添加一个X变量,在etc/profile 尾部添加 X=12345即可 输入命令 vim /etc/profile 变量生效 source /etc/profile 测试结果

  2. PPT变为gif效果

    原文链接:https://www.toutiao.com/i6496812863263343117/ 首先我们点击"文件按钮" 在下拉列表中选择"另存为" 在& ...

  3. Cache一致性协议与伪共享问题

    Cache一致性协议 在说伪共享问题之前,有必要聊一聊什么是Cache一致性协议 局部性原理 时间局部性:如果一个信息项正在被访问,那么在近期它很可能还会被再次访问 比如循环.方法的反复调用等 空间局 ...

  4. 《挑战程序设计竞赛》1.6.2-POJ的题目Ants

    #include <stdio.h> #define max(a, b) (((a) > (b)) ? (a) : (b)) #define min(a, b) (((a) < ...

  5. scanf报错问题

    VS2013 scanf()函数报错问题. 编译器就是说这个环境下用scanf()函数不安全,建议使用scanf_s()函数.如何要使用scanf()函数的话,就需要在头文件或者源文件开头加上:use ...

  6. [SWPUCTF 2018]SimplePHP

    [SWPUCTF 2018]SimplePHP 知识点 1.PHP反序列化入门之phar 2.反序列化魔术方法 __construct()//当一个对象创建时被调用 __destruct() //当一 ...

  7. Javascript实现全选按钮

    Javascript实现全选按钮 效果:有全选选项框和单个选项框,选择全选框,所有的的选择都打上的钩,取消全选钩所有的都去掉了钩,如果取消其中某一个的钩,那么全选的钩也取消,反之全选所有的选项,那么全 ...

  8. C# winform Visual Studio Installer打包教程,安装包

    //具体打包过程,参考下面网址 https://www.cnblogs.com/dongh/p/6868638.html VS 扩展和更新-联机 搜索 Microsoft Visual Studio ...

  9. 【刷题-LeetCode】202. Happy Number

    Happy Number Write an algorithm to determine if a number n is "happy". A happy number is a ...

  10. go生成随机数字验证码

    一行代码搞定 code := fmt.Sprintf("%06v", rand.New(rand.NewSource(time.Now().UnixNano())).Int31n( ...