layout: post
title: 第十四届“商汤杯”北航程序设计竞赛
author: "luowentaoaa"
catalog: true
mathjax: true
tags:
- 数学
- 矩阵快速幂
- 权值线段树
B
升级超梦 (dfs)
思路
题目比较简单,每一回合只有两个情况 要么用经验 要么用糖果
所以我们直接搜索一下n个糖果和m个exp的情况
即(dp[n][exp]=max(dp[n][exp-need],dp[n-1][exp]))
D
Bella 姐姐发辣条 (二分)
思路
我们发现只要最后一个人的辣条数确定了那全部人的辣条就确定了。
而且总答案随着最后一个人的辣条数减少而减少 。所以符合二分性
E
禁忌的共鸣 (数论+最小生成树)
思路
首先需要看出题目要求的是一个最大生成树
如果两个结点之间相连肯定答案是他们是GCD也就是他们的因子值
所以我们预处理每个数的因子,然后从最大的因子开始建立生成树
F
zzh 与同余方程 (数论)
思路
首先(b-a=km) 带入((i+1)^{i+1}=(i+1)^i) 可以得到((i+1)^{i+1}-(i+1)^i=(i+1)^{i} imes(i))
题目要求的就是(sum (i+1)^i imes(i)) 设(f[n]=(i+1)^i) (g[n]=i)
我们可以很轻松预处理出(i+1)的因子然后发现((i+1)^i) 和(i+1)之间有种关系
假设(i+1=prime1^a imes prime2^b imes prime3^c dots) 那么((i+1)^i=(prime1^a imes prime2^b imes prime3^c)^i)
所以根据求因子公式$ (a+1)(b+1)(c+1)(得出)(a imes t+1)(b imes t +1)(c imes t + 1)$
因为因子数是积性函数 并且(i和i+1)互质
所以答案就很显然了。
H
Draw 顺小王子 (爆搜+模拟)
思路
暴力搜索的复杂度为(49^2 imes T imes13)
所以绰绰有余,主要是这题模拟的细节处理
K
wjj 的自动售货机 (线段树区间取模)
思路
第一眼线段树,区间取模和求和都明显了。