<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[piapiapia2333的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/piapiapia2333</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; piapiapia2333]]></copyright><item><title><![CDATA[CCF 窗口 C语言 201403-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84994205</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84994205</guid><author>piapiapia2333</author><pubDate>Thu, 13 Dec 2018 19:59:21 +0800</pubDate><description><![CDATA[思路
1.设置a数组下标来表示优先级，下标越大优先级越高。
例如a[1],a[2],a[3]优先级逐渐增大。
2.优先级的变化，像队列一样，被点击的窗口，优先级变成最大，插到a数组最后面，前面的窗口优先级逐渐减小。
3.优先级的变化（实例）

源代码（C语言）
#include &amp;lt;stdio.h&amp;gt;
int main()
{
	int n,m;
	scanf(&quot;%d %d&quot;,&amp;amp;n...]]></description><category></category></item><item><title><![CDATA[CCF 最大波动 C语言 201609-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84965147</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84965147</guid><author>piapiapia2333</author><pubDate>Wed, 12 Dec 2018 09:58:20 +0800</pubDate><description><![CDATA[问题描述
小明正在利用股票的波动程度来研究股票。小明拿到了一只股票每天收盘时的价格，他想知道，这只股票连续几天的最大波动值是多少，即在这几天中某天收盘价格与前一天收盘价格之差的绝对值最大是多少。
输入格式
输入的第一行包含了一个整数n，表示小明拿到的收盘价格的连续天数。
　　第二行包含n个正整数，依次表示每天的收盘价格。
输出格式
输出一个整数，表示这只股票这n天中的最大波动值。
样例输入
6
2...]]></description><category></category></item><item><title><![CDATA[CCF 折点计数 C语言 201604-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84965039</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84965039</guid><author>piapiapia2333</author><pubDate>Wed, 12 Dec 2018 09:51:21 +0800</pubDate><description><![CDATA[问题描述
给定n个整数表示一个商店连续n天的销售量。如果某天之前销售量在增长，而后一天销售量减少，则称这一天为折点，反过来如果之前销售量减少而后一天销售量增长，也称这一天为折点。其他的天都不是折点。如下图中，第3天和第6天是折点。
给定n个整数a1, a2, …, an表示销售量，请计算出这些天总共有多少个折点。
　　为了减少歧义，我们给定的数据保证：在这n天中相邻两天的销售量总是不同的，即ai-...]]></description><category></category></item><item><title><![CDATA[CCF 打酱油 C语言 201709-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84944505</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84944505</guid><author>piapiapia2333</author><pubDate>Mon, 10 Dec 2018 18:41:33 +0800</pubDate><description><![CDATA[问题描述
小明带着N元钱去买酱油。酱油10块钱一瓶，商家进行促销，每买3瓶送1瓶，或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。
输入格式
输入的第一行包含一个整数N，表示小明可用于买酱油的钱数。N是10的整数倍，N不超过300。
输出格式
输出一个整数，表示小明最多可以得到多少瓶酱油。
样例输入
40
样例输出
5
样例说明
把40元分成30元和10元，分别买3瓶和1瓶，其中3瓶送1瓶，共...]]></description><category></category></item><item><title><![CDATA[CCF 游戏 C语言 201712-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84944386</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84944386</guid><author>piapiapia2333</author><pubDate>Mon, 10 Dec 2018 18:32:10 +0800</pubDate><description><![CDATA[思路
1.用number记录上一个人所报的数。
2.记得写k=1	的时候，最后一个小朋友获得胜利。
3.当count=1时，证明只剩下最后一个小朋友，就是胜利者。
源代码（C语言）
#include &amp;lt;stdio.h&amp;gt;
int main()
{
	int n,k;
	scanf(&quot;%d %d&quot;,&amp;amp;n,&amp;amp;k);
	int flag=1;
	int count;
	int ...]]></description><category></category></item><item><title><![CDATA[CCF 碰撞的小球 C语言 201803-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84929162</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84929162</guid><author>piapiapia2333</author><pubDate>Sun, 09 Dec 2018 16:30:27 +0800</pubDate><description><![CDATA[思路
1.用数组a[]下标当小球编号
2.用flag[]数组定义方向，1为向右，-1为向左
3.位置相同则相撞，令flag相反
4.到达顶端，令flag相反
源代码 （C语言）
#include &amp;lt;stdio.h&amp;gt;
int main()
{
	int n,L,t;
	scanf(&quot;%d %d %d&quot;,&amp;amp;n,&amp;amp;L,&amp;amp;t);
	int flag[110];//1是向...]]></description><category></category></item><item><title><![CDATA[CCF 买菜 C语言 201809-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84886823</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84886823</guid><author>piapiapia2333</author><pubDate>Fri, 07 Dec 2018 20:34:00 +0800</pubDate><description><![CDATA[思路

情况要分清楚

源代码

#include &amp;lt;stdio.h&amp;gt;
int a[2020][10];
int main()
{
	int n;
	int c,d;
	int S=0;
	int i,j;
	scanf(&quot;%d&quot;,&amp;amp;n);
	for(i=0;i&amp;lt;n;i++)
	{
		scanf(&quot;%d %d&quot;,&amp;amp;a[i][0],&amp;amp;a[i][1]);
	...]]></description><category></category></item><item><title><![CDATA[CCF 卖菜 C语言 201809-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84886553</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84886553</guid><author>piapiapia2333</author><pubDate>Fri, 07 Dec 2018 20:12:00 +0800</pubDate><description><![CDATA[问题描述

在一条街上有n个卖菜的商店，按1至n的顺序排成一排，这些商店都卖一种蔬菜。
　　第一天，每个商店都自己定了一个价格。店主们希望自己的菜价和其他商店的一致，第二天，每一家商店都会根据他自己和相邻商店的价格调整自己的价格。具体的，每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价的平均值（用去尾法取整）。
　　注意，编号为1的商店只有一个相邻的商店2，编号为n的商店只有一个相邻的商店...]]></description><category></category></item><item><title><![CDATA[CCF 公共钥匙盒 C++ 201709-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/84779896</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/84779896</guid><author>piapiapia2333</author><pubDate>Mon, 03 Dec 2018 21:27:21 +0800</pubDate><description><![CDATA[有一个学校的老师共用N个教室，按照规定，所有的钥匙都必须放在公共钥匙盒里，老师不能带钥匙回家。每次老师上课前，都从公共钥匙盒里找到自己上课的教室的钥匙去开门，上完课后，再将钥匙放回到钥匙盒中。
 　　钥匙盒一共有N个挂钩，从左到右排成一排，用来挂N个教室的钥匙。一串钥匙没有固定的悬挂位置，但钥匙上有标识，所以老师们不会弄混钥匙。
 　　每次取钥匙的时候，老师们都会找到自己所需要的钥匙将其取走，而不会移动其他钥匙。每次还钥匙的时候，还钥匙的老师会找到最左边的空的挂钩，将钥匙挂在这个挂钩上。如果有多位老师还]]></description><category></category></item><item><title><![CDATA[CCF 分蛋糕 C语言 201703-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82711351</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82711351</guid><author>piapiapia2333</author><pubDate>Sat, 15 Sep 2018 10:10:46 +0800</pubDate><description><![CDATA[问题描述



小明今天生日，他有n块蛋糕要分给朋友们吃，这n块蛋糕（编号为1到n）的重量分别为a1, a2, …, an。小明想分给每个朋友至少重量为k的蛋糕。小明的朋友们已经排好队准备领蛋糕，对于每个朋友，小明总是先将自己手中编号最小的蛋糕分给他，当这个朋友所分得蛋糕的重量不到k时，再继续将剩下的蛋糕中编号最小的给他，直到小明的蛋糕分完或者这个朋友分到的蛋糕的总重量大于等于k。 
 　　请问当...]]></description><category></category></item><item><title><![CDATA[CCF 学生排队 C语言 201703-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82711304</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82711304</guid><author>piapiapia2333</author><pubDate>Sat, 15 Sep 2018 10:06:19 +0800</pubDate><description><![CDATA[解题思路



把样例带入，比对着写就很容易写出来啦！

问题描述



体育老师小明要将自己班上的学生按顺序排队。他首先让学生按学号从小到大的顺序排成一排，学号小的排在前面，然后进行多次调整。一次调整小明可能让一位同学出队，向前或者向后移动一段距离后再插入队列。 
 　　例如，下面给出了一组移动的例子，例子中学生的人数为8人。 
 　　0）初始队列中学生的学号依次为1, 2, 3, 4, 5, ...]]></description><category></category></item><item><title><![CDATA[CCF 游戏 C语言 201712-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82692833</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82692833</guid><author>piapiapia2333</author><pubDate>Thu, 13 Sep 2018 18:39:05 +0800</pubDate><description><![CDATA[思路和注意



我用a[i]中不为0的数代表小朋友，且没被淘汰。若被淘汰则该编号的小朋友a[i]=0。用b[i]存储所报编号，用v来赋值（代码相结合）。 
步骤 
1.先赋初值 
2.用淘汰条件筛选一下 
3.判断是否结束，输出获胜者 
4.注意k=1的情况 
5.如果所有人都符合淘汰条件，最后一人就是获胜者

问题描述



有n个小朋友围成一圈玩游戏，小朋友从1至n编号，2号小朋友坐在1号小...]]></description><category></category></item><item><title><![CDATA[CCF 最小差值 C/C++ 201712-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82670113</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82670113</guid><author>piapiapia2333</author><pubDate>Wed, 12 Sep 2018 23:09:21 +0800</pubDate><description><![CDATA[问题描述



给定n个数，请找出其中相差（差的绝对值）最小的两个数，输出它们的差值的绝对值。

输入格式



输入第一行包含一个整数n。 
第二行包含n个正整数，相邻整数之间使用一个空格分隔。

输出格式



输出一个整数，表示答案。

样例输入



5 
 1 5 4 8 20

样例输出



1

样例说明



相差最小的两个数是5和4，它们之间的差值是1。

样例输入



5 ...]]></description><category></category></item><item><title><![CDATA[CCF 消除类游戏 C语言 201512-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82585944</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82585944</guid><author>piapiapia2333</author><pubDate>Mon, 10 Sep 2018 10:21:04 +0800</pubDate><description><![CDATA[问题描述



消除类游戏是深受大众欢迎的一种游戏，游戏在一个包含有n行m列的游戏棋盘上进行，棋盘的每一行每一列的方格上放着一个有颜色的棋子，当一行或一列上有连续三个或更多的相同颜色的棋子时，这些棋子都被消除。当有多处可以被消除时，这些地方的棋子将同时被消除。 
 　　现在给你一个n行m列的棋盘，棋盘中的每一个方格上有一个棋子，请给出经过一次消除后的棋盘。 
 　　请注意：一个棋子可能在某一行和某...]]></description><category></category></item><item><title><![CDATA[CCF 数位之和 C语言 201512-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82556481</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82556481</guid><author>piapiapia2333</author><pubDate>Sun, 09 Sep 2018 10:49:27 +0800</pubDate><description><![CDATA[问题描述



给定一个十进制整数n，输出n的各位数字之和。

输入格式



输入一个整数n。

输出格式



输出一个整数，表示答案。

样例输入



20151220

样例输出



13

样例说明



20151220的各位数字之和为2+0+1+5+1+2+2+0=13。

评测用例规模与约定



所有评测用例满足：0 ≤ n ≤ 1000000000。

源代码





#...]]></description><category></category></item><item><title><![CDATA[CCF 日期计算 C语言 201509-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82556341</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82556341</guid><author>piapiapia2333</author><pubDate>Sun, 09 Sep 2018 10:38:05 +0800</pubDate><description><![CDATA[问题描述



给定一个年份y和一个整数d，问这一年的第d天是几月几日？ 
注意闰年的2月有29天。满足下面条件之一的是闰年： 
1） 年份是4的整数倍，而且不是100的整数倍； 
2） 年份是400的整数倍。

输入格式



输入的第一行包含一个整数y，表示年份，年份在1900到2015之间（包含1900和2015）。 
输入的第二行包含一个整数d，d在1至365之间。

输出格式



输出...]]></description><category></category></item><item><title><![CDATA[CCF 图像旋转 C语言 201503-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527500</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527500</guid><author>piapiapia2333</author><pubDate>Sat, 08 Sep 2018 10:58:58 +0800</pubDate><description><![CDATA[问题描述



旋转是图像处理的基本操作，在这个问题中，你需要将一个图像逆时针旋转90度。 
计算机中的图像表示可以用一个矩阵来表示，为了旋转一个图像，只需要将对应的矩阵旋转即可。

输入格式



输入的第一行包含两个整数n, m，分别表示图像矩阵的行数和列数。 
接下来n行每行包含m个整数，表示输入的图像。

输出格式



输出m行，每行包含n个整数，表示原始矩阵逆时针旋转90度后的矩阵。
...]]></description><category></category></item><item><title><![CDATA[CCF 数字排序 C语言 201503-2]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527392</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527392</guid><author>piapiapia2333</author><pubDate>Sat, 08 Sep 2018 10:51:51 +0800</pubDate><description><![CDATA[问题描述



给定n个整数，请统计出每个整数出现的次数，按出现次数从多到少的顺序输出。



输入格式



输入的第一行包含一个整数n，表示给定数字的个数。 
第二行包含n个整数，相邻的整数之间用一个空格分隔，表示所给定的整数。



输出格式



输出多行，每行包含两个整数，分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多，则先输出值较小的，然后...]]></description><category></category></item><item><title><![CDATA[CCF 出现次数最多的数 C语言 201312-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527250</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82527250</guid><author>piapiapia2333</author><pubDate>Sat, 08 Sep 2018 10:40:32 +0800</pubDate><description><![CDATA[问题描述



给定n个正整数，找出它们中出现次数最多的数。如果这样的数有多个，请输出其中最小的一个。

输入格式



输入的第一行只有一个正整数n(1 ≤ n ≤ 1000)，表示数字的个数。 
输入的第二行有n个整数s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相邻的数用空格分隔。

输出格式



输出这n个次数中出现次数最多的数。如果这样的数有多个，...]]></description><category></category></item><item><title><![CDATA[CCF 门禁系统 C语言 201412-1]]></title><link>https://blog.youkuaiyun.com/piapiapia2333/article/details/82492574</link><guid>https://blog.youkuaiyun.com/piapiapia2333/article/details/82492574</guid><author>piapiapia2333</author><pubDate>Fri, 07 Sep 2018 10:30:39 +0800</pubDate><description><![CDATA[问题描述



涛涛最近要负责图书馆的管理工作，需要记录下每天读者的到访情况。每位读者有一个编号，每条记录用读者的编号来表示。给出读者的来访记录，请问每一条记录中的读者是第几次出现。

输入格式



输入的第一行包含一个整数n，表示涛涛的记录条数。 
第二行包含n个整数，依次表示涛涛的记录中每位读者的编号。

输出格式



输出一行，包含n个整数，由空格分隔，依次表示每条记录中的读者编号是第几...]]></description><category></category></item></channel></rss>