<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[迫真编程部]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/k9789</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; k9789]]></copyright><item><title><![CDATA[G - Gluttonous Goop]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/119425538</link><guid>https://blog.youkuaiyun.com/k9789/article/details/119425538</guid><author>k9789</author><pubDate>Sat, 14 Aug 2021 22:01:59 +0800</pubDate><description><![CDATA[A - Appeal to the Audience
题意
给出含n个结点的树和k个选手的技能值，保证这棵树上所有节点的儿子数不为1且叶子个数等于k。在每一个非叶子节点进行一次比赛，选手为该节点的所有儿子，该比赛的权值为所有选手的技能值之和，且技能值最大的选手晋级。求所有比赛权值之和的最大值。
思路
让技能值越大的选手尽可能多参加比赛，使得总权值最大。
①用level[i]记录每个结点i的最高参赛次数，建树过程中将所有叶子结点的level设为1，非叶子结点设为0；
②bfs将树的所有结点按层数排序；
③从下]]></description><category></category></item><item><title><![CDATA[高雅憨数笔记]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/119704272</link><guid>https://blog.youkuaiyun.com/k9789/article/details/119704272</guid><author>k9789</author><pubDate>Sat, 14 Aug 2021 19:56:47 +0800</pubDate><description><![CDATA[#include &lt;math.h&gt;
double ceil (double); //向上取整，ceil(3.5) == 4
double floor (double); //向下取整，floor(3.5) == 3
//ceil(4) == floor(4) == 4


]]></description><category></category></item><item><title><![CDATA[【今日拉胯】POJ - 2456 Aggressive cows（献忠牛牛）]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/119674157</link><guid>https://blog.youkuaiyun.com/k9789/article/details/119674157</guid><author>k9789</author><pubDate>Fri, 13 Aug 2021 14:44:46 +0800</pubDate><description><![CDATA[题目链接
题意
有N (2 &lt;= N &lt;= 100,000)个牛棚分布在一条直线上，坐标为 x1,…,xN (0 &lt;= xi &lt;= 1,000,000,000)，现在有C(2 &lt;= C &lt;= N)头牛要分置在这些牛棚里，但这些牛喜欢互相图图，所以要让这些牛的距离尽可能大，求分置所有牛后两两间最小距离的最大值。

...]]></description><category></category></item><item><title><![CDATA[【21暑假ACM集训】R2-C2-B Equalizing by Division (hard version) CodeForces - 1213D2]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/119323212</link><guid>https://blog.youkuaiyun.com/k9789/article/details/119323212</guid><author>k9789</author><pubDate>Mon, 02 Aug 2021 15:08:02 +0800</pubDate><description><![CDATA[题目链接
考查
贪心
题意
给出 n 个正整数 a1, a2, … , an (1 ≤ ai ≤ 2 * 10^5)，且对每个数都可以进行任意次如下操作：n = n / 2(向下取整)，求操作次数的最小值使得这些数中至少有 k 个数相等。 (1 ≤ k ≤ n ≤ 2 * 10^5) 。
思路
对于数a、b、c，若b、c均可通过若干次操作得到a且b &lt; c，易得操作次数t(b) &lt; t(c)，可知对所有可以变成x的ai，取最小的k个ai时操作总数最小。
故先将输入数据从小到大排序(直接用mult]]></description><category></category></item><item><title><![CDATA[【本校OJ】P4927 高斯消元法]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/115441931</link><guid>https://blog.youkuaiyun.com/k9789/article/details/115441931</guid><author>k9789</author><pubDate>Mon, 05 Apr 2021 15:12:55 +0800</pubDate><description><![CDATA[标题党，高斯消元法大概就是线代课学的各种初等行变换，我暂且蒙在鼓里，，，
思路：

找出每个灯和开关之间的关系，列出方程组求解。——HINT

以每个开关的状态为未知数列出三十元一次方程组。在其增广矩阵中，矩阵的行与灯一一对应，列与开关一一对应，对于每个开关Y，若Y可控制第X个灯，则X行Y列元素为1，否则为0；每行最后一列（0或1）表示对应灯的初始状态。
例：

对灯阵的初始状态：
0 1 1 0 1 0
1 0 0 1 1 1
0 0 1 0 0 1
1 0 0 1 0 1
0 1 1 1 0 0
可列出]]></description><category></category></item><item><title><![CDATA[【本校OJ】P2303 第几个素数]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/110411778</link><guid>https://blog.youkuaiyun.com/k9789/article/details/110411778</guid><author>k9789</author><pubDate>Sat, 19 Dec 2020 23:11:08 +0800</pubDate><description><![CDATA[。

]]></description><category></category></item><item><title><![CDATA[ACM协会双十一新生赛——CodeForces - 1245C]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/110452573</link><guid>https://blog.youkuaiyun.com/k9789/article/details/110452573</guid><author>k9789</author><pubDate>Tue, 01 Dec 2020 21:19:42 +0800</pubDate><description><![CDATA[题目链接


要点
1.连续x个n/u的组合方法数n为斐波那契数列的项，即
n == F（x + 1）
2.取模运算
a * b % n == （a % n） * (b % n) % n


代码


#include&lt;stdio.h&gt;

char w[100001];
unsigned long long f[1000000] = { 1 , 2 };


int main() {
	unsigned long long sum = 1;
	int num = 0, noru;
	for ..]]></description><category></category></item><item><title><![CDATA[【洛谷】P1012 拼数]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/109825039</link><guid>https://blog.youkuaiyun.com/k9789/article/details/109825039</guid><author>k9789</author><pubDate>Mon, 23 Nov 2020 20:37:53 +0800</pubDate><description><![CDATA[与过河卒同为卡我半个月的恶俗题，，，今日双双解决，双喜临门，但代码还是较复杂恶心，以后训练有素了再改，，，
#include &lt;stdio.h&gt;

char num[20][11];

int main()
{
    int n, p = 0, ord = 0, max;
    char maxp, ip, in;
    scanf("%d", &amp;n);
    for (int i = 0; i &lt; n; i++)
        for (int i2 = 0; i2 &]]></description><category></category></item><item><title><![CDATA[【洛谷】P1002 过河卒]]></title><link>https://blog.youkuaiyun.com/k9789/article/details/109818430</link><guid>https://blog.youkuaiyun.com/k9789/article/details/109818430</guid><author>k9789</author><pubDate>Thu, 19 Nov 2020 17:49:10 +0800</pubDate><description><![CDATA[题目链接
P1002 过河卒


思路
①棋盘中一点走法为该点上方点走法+该点左侧点走法，即




way[x][y] = way[x - 1][y] + way[x][y - 1]



②对方马的控制点走法为0


样例棋盘
1 1 1 1 1 1 1
1 2 x 1 x 1 2
1 x 0 1 1 x 2
1 1 1 x 1 1 3
1 x 1 1 2 x 3
1 1 x 1 x 0 3
1 2 2 3 3 3 6


代码


#include&lt;stdio.h&gt;

unsigned..]]></description><category></category></item></channel></rss>