摘要: 原题链接 考察:构造 思路: 可以发现(i,i)点彼此距离为sqrt(2).我们构造彼此距离差1的点即可 ##Code #include <iostream> #include <cstring> using namespace std; int n,m; int main() { while(sc 阅读全文
posted @ 2021-06-30 23:46 acmloser 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:思维 过了这题的有1w+,本蒟蒻直接去死算了() 思路: 假设排序后$a[0],a[1],a[2]$ 分两种情况: \(a[2]>=2(a[0]+a[1])\),此时答案为$a[0]+a[1]$ \(a[2] < 2(a[0]+a[1])\),此时不断取a[2] 2个,a[1]取一个 阅读全文
posted @ 2021-06-30 22:56 acmloser 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:线性dp(状态机dp?) 错误思路: 对于每个数字按出现次数sz与值val的乘积排序,假设第一个值为x,$x*sz[x]>(x-1)*sz[x-1]\(但这并不表明\)(x-1)*sz[x-1]+(x+1)sz[x+1]会<xsz[x]$.所以贪心是不可取的. 正确思路: 选择没有规 阅读全文
posted @ 2021-06-30 19:29 acmloser 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:贪心+二分 错误思路: 对于每个折扣能买就买. 正确思路: 直接求最小天数是不好求的,先二分确定天数,然后判断此天数是否能买完.用while和优先队列模拟每天干什么,对于每个折扣,最优解是在给定天数范围内,买折扣物品的天数能晚则晚,将钱留给其他物品. ##Code #include 阅读全文
posted @ 2021-06-30 16:59 acmloser 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:贪心+思维 思路: 易知 反序和<=乱序和<=正序和.但是这道题是求$f[l,r]$的累加和.我们可以发现由于a是固定的,每个$a[i]$对res的贡献次数也是固定的:即$i*(n-i+1)\(,也就是求\)\sum_1^n a[i]*b[i]i(n-i+1)$,因为对于$a[i]$ 阅读全文
posted @ 2021-06-30 14:06 acmloser 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 原题链接 考察:思维 错误思路: 每个数求lcm,检查lcm的因子是否在d数组内. TLE 思路: 如果存在的话,最后答案一定是res = d[n]*d[1](排序后),我们检查res的因子,最后比较个数即可(一定要比个数). ##Code #include <iostream> #include 阅读全文
posted @ 2021-06-30 10:43 acmloser 阅读(32) 评论(0) 推荐(0) 编辑