A. Glory Addicts
模拟,并不想写题解。
embedcode("Code", "https://github.com/StableAgOH/solved-problems/blob/main/codeforces/1738/A.cpp")
B. Prefix Sum Addicts
算出差分数组 \(d\),然后判断:
第一项(差分数组的第一项包括原数组 \(1 \sim n-k+1\) 项)能否合法拼出第二项;
第二项及之后是否有序。
第一条的具体判断方法是判断第一项是否小于等于第二项 \(\times (n-k+1)\)。
embedcode("Code",...
A. Working Week
直接输出 \(n/3-2\) 即可。
embedcode("Code", "https://github.com/StableAgOH/solved-problems/blob/main/codeforces/1735/A.cpp")
B. Tea with Tangerines
找到最小一片橘子皮,设其大小为 \(x\),则其他橘子皮(设大小为 \(y\))对答案的贡献为 \(\lceil \cfrac{y}{2x-1} \rceil - 1\)。
embedcode("Code", "https://github.com/StableAgOH/...
今天发现了一个使用位运算枚举二进制子集的风骚方法,特记录一下:
枚举子集
设 \(s\) 为要被枚举的集合:
12for(int i=s;i;i=(i-1)&s) cout<<bitset<4>(i)<<endl;
当 \(s=7=(111)_2\) 时,上述代码的运行结果为:
12345670111011001010100001100100001
枚举出的结果是递减的。
枚举固定大小的子集
设 \(n\) 为集合大小,\(m\) 为要枚举的子集大小:
12for(int i=(1<<m)-1,x,y;i<(1<&...
给定一棵树,树的某个结点上有一个硬币,在某一时刻硬币会等概率地移动到邻接结点上,问硬币移动到邻接结点上的期望距离。
需要用到的定义
\(T=(V,E)\): 所讨论的树
\(d(u)\): \(u\) 结点的度数
\(w(u,v)\): \(u\) 结点与 \(v\) 结点之间的边的边权
\(p_u\): \(u\) 结点的父结点
\({son}_u\): \(u\) 结点的子结点集合
\({sibling}_u\): \(u\) 结点的兄弟结点集合
向父结点走的期望距离
设 \(f(u)\) 代表 \(u\) 结点走到其父结点 \(p_u\) 的期望距离,则有:
\[f(u) = ...
希望自己有时间的的话一天至少写 5 道题
2022-04-30
embedproblem("gym", "103389A", "音乐游戏")
embedproblem("gym", "103389D", "修建道路")
embedproblem("gym", "103389G", "3G 网络")
embedproblem("gym", "103389I", "驾驶卡丁车")
embedproblem("gym", "103389K", "公交线路")
2022-05-03
embedproblem("lg", "P4377", "[USACO18OPEN]...
embedpdf("题面", ["LQ13province1_CB"])
九进制转十进制
送分题,推荐使用 std::stoi 函数,自带进制转换
embedcode("Code", "https://github.com/StableAgOH/solved-problems/blob/main/lq/13/province1/CB/A.cpp")
顺子日期
题面写的很差,对“顺子”没有一个准确的定义(逆序是否算顺子?包括 \(0\) 的是否算顺子?)
若顺子定义为:“从小到大连续三个大于等于 \(0\) 的数字”,则本题做法如下:
首先我们发现年份部分 \(2022\) 是无...
embedpdf("题面", ["LQ12province1_CA", "LQ12province1_CB"])
空间
常识题,1MB=1024KB, 1KB=1024Bytes, 1Byte=8bits
故 256MB 可以存储 \(256 \times 1024 \times 1024 \times 8 \div 32=67108864\) 个 32 位二进制整数。
答案:\(67108864\)
卡片
模拟即可,首先开一个数组 \(a\),记录 \(0 \sim 9\) 的卡片各有 \(2021\) 张
\(i\) 从 \(1\) 开始递增,对于每个 \(i\),遍历其所有数...
embedpdf("题面", ["LQ12province2_CA", "LQ12province2_CB"])
求余
送分题
答案:\(1\)
双阶乘
只需要维护最后 \(5\) 位即可,于是一个 for 搞定,边乘边对 \({10}^5\) 取模
答案:\(59375\)
embedcode("Code", "https://github.com/StableAgOH/solved-problems/blob/main/lq/12/province2/C/2.cpp")
格点
两重 for 遍历 \(x,y\) 值然后加一个判断计数即可
答案:\(15698\)
embe...