<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[IoT_fast的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/IoT_fast</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; IoT_fast]]></copyright><item><title><![CDATA[算法训练 矩阵加法]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86614785</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86614785</guid><author>IoT_fast</author><pubDate>Wed, 23 Jan 2019 17:38:26 +0800</pubDate><description><![CDATA[Description
给定两个N×M的矩阵，计算其和。其中：
　　N和M大于等于1且小于等于100，矩阵元素的绝对值不超过1000。
Input
输入描述:
　　输入数据的第一行包含两个整数N、M，表示需要相加的两个矩阵的行数和列数。接下来2*N行每行包含M个数，其中前N行表示第一个矩阵，后N行表示第二个矩阵。
输入样例:
2 2
1 2
3 4
5 6
7 8
Output
输出描述:
　　你...]]></description><category></category></item><item><title><![CDATA[算法训练 简单加法(基本型)]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86614183</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86614183</guid><author>IoT_fast</author><pubDate>Wed, 23 Jan 2019 17:14:36 +0800</pubDate><description><![CDATA[Description
首先给出简单加法算式的定义：
　　如果有一个算式(i)+(i+1)+(i+2),(i&amp;gt;=0)，在计算的过程中，没有任何一个数位出现了进位，则称其为简单的加法算式。
　　例如：i=3时，3+4+5=12，有一个进位，因此3+4+5不是一个简单的加法算式；又如i=112时，112+113+114=339，没有在任意数位上产生进位，故112+113+114是一个简单的加法算...]]></description><category></category></item><item><title><![CDATA[算法提高 和最大子序列]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86604654</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86604654</guid><author>IoT_fast</author><pubDate>Wed, 23 Jan 2019 09:36:30 +0800</pubDate><description><![CDATA[Description
对于一个给定的长度为N的整数序列A，它的“子序列”的定义是：A中非空的一段连续的元素（整数）。你要完成的任务是，在所有可能的子序列中，找到一个子序列，该子序列中所有元素的和是最大的（跟其他所有子序列相比）。程序要求你输出这个最大值。
Input
输入描述:
　　输入文件的第一行包含一个整数N，第二行包含N个整数，表示A。
　　其中
　　1 &amp;lt;= N &amp;lt;= 100...]]></description><category></category></item><item><title><![CDATA[算法提高 最小乘积(提高型)]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86598464</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86598464</guid><author>IoT_fast</author><pubDate>Tue, 22 Jan 2019 17:34:38 +0800</pubDate><description><![CDATA[Description
给两组数，各n个。
　　请调整每组数的排列顺序，使得两组数据相同下标元素对应相乘，然后相加的和最小。要求程序输出这个最小值。
　　例如两组数分别为:1 3　　-5和-2 4 1
那么对应乘积取和的最小值应为：
　　(-5) * 4 + 3 * (-2) + 1 * 1 = -25
Input
输入描述:
　　第一个行一个数T表示数据组数。后面每组数据，先读入一个n，接下来两...]]></description><category></category></item><item><title><![CDATA[leetcode-46.全排列]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86594463</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86594463</guid><author>IoT_fast</author><pubDate>Tue, 22 Jan 2019 14:43:11 +0800</pubDate><description><![CDATA[描述
给定一个没有重复数字的序列，返回其所有可能的全排列。
示例:
输入: [1,2,3]
输出:
[
[1,2,3],
[1,3,2],
[2,1,3],
[2,3,1],
[3,1,2],
[3,2,1]
]
源码
import java.util.*;

class Solution {
    private int[] occupy;
    
    public void dfs(i...]]></description><category></category></item><item><title><![CDATA[leetcode-31.下一个排列]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86583213</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86583213</guid><author>IoT_fast</author><pubDate>Mon, 21 Jan 2019 19:45:45 +0800</pubDate><description><![CDATA[描述
实现获取下一个排列的函数，算法需要将给定数字序列重新排列成字典序中下一个更大的排列。
如果不存在下一个更大的排列，则将数字重新排列成最小的排列（即升序排列）。
必须原地修改，只允许使用额外常数空间。
实例
以下是一些例子，输入位于左侧列，其相应输出位于右侧列。
1,2,3 → 1,3,2
3,2,1 → 1,2,3
1,1,5 → 1,5,1
源码
import java.util.Arra...]]></description><category></category></item><item><title><![CDATA[算法提高 计算时间]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86580262</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86580262</guid><author>IoT_fast</author><pubDate>Mon, 21 Jan 2019 17:42:53 +0800</pubDate><description><![CDATA[Description
给定一个t，将t秒转化为HH:MM:SS的形式，表示HH小时MM分钟SS秒。HH,MM,SS均是两位数，如果小于10用0补到两位。
Inpu
输入描述:
　　第一行一个数T(1&amp;lt;=T&amp;lt;=100,000)，表示数据组数。后面每组数据读入一个数t，0&amp;lt;=t&amp;lt;246060。
输入样例:
2
0
86399
Output
输出描述:
　　每组数据一行，HH:...]]></description><category></category></item><item><title><![CDATA[算法训练 排列问题]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86577908</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86577908</guid><author>IoT_fast</author><pubDate>Mon, 21 Jan 2019 16:40:57 +0800</pubDate><description><![CDATA[Description
求一个0～N-1的排列（即每个数只能出现一次），给出限制条件（一张N*N的表，第i行第j列的1或0，表示为j-1这个数不能出现在i-1这个数后面，并保证第i行第i列为0），将这个排列看成一个自然数，求从小到大排序第K个排列。
Input
输入描述:
　　N&amp;lt;=10，K&amp;lt;=500000
输入样例:
3 2
0 1 1
1 0 0
0 1 0
Output
输出描述...]]></description><category></category></item><item><title><![CDATA[算法提高 Torry的困惑(提高型)]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86541416</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86541416</guid><author>IoT_fast</author><pubDate>Fri, 18 Jan 2019 15:53:04 +0800</pubDate><description><![CDATA[Description
Torry从小喜爱数学。一天，老师告诉他，像2、3、5、7……这样的数叫做质数。Torry突然想到一个问题，前10、100、1000、10000……个质数的乘积是多少呢？他把这个问题告诉老师。老师愣住了，一时回答不出来。于是Torry求助于会编程的你，请你算出前n个质数的乘积。不过，考虑到你才接触编程不久，Torry只要你算出这个数模上50000的值。
Input
输入描述...]]></description><category></category></item><item><title><![CDATA[算法训练 数组查找及替换]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86539908</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86539908</guid><author>IoT_fast</author><pubDate>Fri, 18 Jan 2019 14:52:27 +0800</pubDate><description><![CDATA[Description
给定某整数数组和某一整数b。要求删除数组中可以被b整除的所有元素，同时将该数组各元素按从小到大排序。如果数组元素数值在A到Z的ASCII之间，替换为对应字母。元素个数不超过100，b在1至100之间。
Input
输入描述:
　　第一行为数组元素个数和整数b
　　第二行为数组各个元素
输入样例:
7 2
77 11 66 22 44 33 55
Output
输出描述:
　...]]></description><category></category></item><item><title><![CDATA[算法提高 递归倒置字符数组]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86535772</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86535772</guid><author>IoT_fast</author><pubDate>Fri, 18 Jan 2019 10:41:02 +0800</pubDate><description><![CDATA[Description
完成一个递归程序，倒置字符数组。并打印实现过程
　　递归逻辑为：
　　当字符长度等于1时，直接返回
　　否则，调换首尾两个字符，在递归地倒置字符数组的剩下部分
Input
输入描述:
　　字符数组长度及该数组
输入样例:
5 abcde
Output
输出描述:
　　在求解过程中，打印字符数组的变化情况。
　　最后空一行，在程序结尾处打印倒置后该数组的各个元素。
输出样例:...]]></description><category></category></item><item><title><![CDATA[算法训练 蜜蜂飞舞]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86534672</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86534672</guid><author>IoT_fast</author><pubDate>Fri, 18 Jan 2019 09:49:54 +0800</pubDate><description><![CDATA[Description
“两只小蜜蜂呀，飞在花丛中呀……”
话说这天天上飞舞着两只蜜蜂，它们在跳一种奇怪的舞蹈。用一个空间直角坐标系来描述这个世界，那么这两只蜜蜂初始坐标分别为(x1,y1,z1)，(x2,y2,z2)　　。在接下来它们将进行n次飞行，第i次飞行两只蜜蜂分别按照各自的速度向量飞行ti个单位时间。对于这一现象，玮玮已经观察了很久。他很想知道在蜜蜂飞舞结束时，两只蜜蜂的距离是多少。现在...]]></description><category></category></item><item><title><![CDATA[算法训练 Hanoi问题]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86525567</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86525567</guid><author>IoT_fast</author><pubDate>Thu, 17 Jan 2019 15:38:09 +0800</pubDate><description><![CDATA[Description
如果将课本上的Hanoi塔问题稍做修改：仍然是给定N只盘子，3根柱子，但是允许每次最多移动相邻的M只盘子（当然移动盘子的数目也可以小于M）,最少需要多少次？
　　例如N=5，M=2时，可以分别将最小的2个盘子、中间的2个盘子以及最大的一个盘子分别看作一个整体，这样可以转变为N=3，M=1的情况，共需要移动7次。
Input
输入描述:
　　输入数据仅有一行，包括两个数N和M...]]></description><category></category></item><item><title><![CDATA[算法训练 调和数列问题]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/86520473</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/86520473</guid><author>IoT_fast</author><pubDate>Thu, 17 Jan 2019 11:04:38 +0800</pubDate><description><![CDATA[Description
输入一个实数x，求最小的n使得，1/2+1/3+1/4+…+1/(n+1)&amp;gt;=x。
输入的实数x保证大于等于0.01，小于等于5.20，并且恰好有两位小数。你的程序要能够处理多组数据，即不停地读入x，如果x不等于0.00，则计算答案，否则退出程序。
输出格式为对于一个x，输出一行n card(s)。其中n表示要计算的答案。
Input
输入描述:
　　分行输入x的具体...]]></description><category></category></item><item><title><![CDATA[福大OJ 招聘]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85090042</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85090042</guid><author>IoT_fast</author><pubDate>Wed, 19 Dec 2018 10:26:44 +0800</pubDate><description><![CDATA[Description
Alice新开了一家公司，它的下面有两个项目，分别需要N1和N2个人来完成。现在有N个人前来应聘，于是Alice通过面试来决定他们中的哪些人会被录用。
Alice在面试中，会仔细考察他们能如何为公司的项目带来收益。她给每个人打了两个分值Q1和Q2，表示他加入第一个和第二项目分别能带来的收益值。同时，她也会仔细考察他们每个人的缺点，并且给每人打了另两个分值C1和C2，表示他们...]]></description><category></category></item><item><title><![CDATA[蓝桥杯 算法训练 接水]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85078841</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85078841</guid><author>IoT_fast</author><pubDate>Tue, 18 Dec 2018 20:49:21 +0800</pubDate><description><![CDATA[Description
学校里有一个水房，水房里一共装有m 个龙头可供同学们打开水，每个龙头每秒钟的 供水量相等，均为1。 现在有n 名同学准备接水，他们的初始接水顺序已经确定。将这些同学按接水顺序从1 到n 编号，i 号同学的接水量为wi。接水开始时，1 到m 号同学各占一个水龙头，并同时打 开水龙头接水。当其中某名同学j 完成其接水量要求wj 后，下一名排队等候接水的同学k 马上接替j 同学的...]]></description><category></category></item><item><title><![CDATA[leetcode-1.两数之和]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85066141</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85066141</guid><author>IoT_fast</author><pubDate>Tue, 18 Dec 2018 15:17:31 +0800</pubDate><description><![CDATA[描述
给定一个整数数组 nums 和一个目标值 target，请你在该数组中找出和为目标值的那 两个 整数，并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是，你不能重复利用这个数组中同样的元素。
示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
源码
用一个ma...]]></description><category></category></item><item><title><![CDATA[福大OJ 连接格点]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85062238</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85062238</guid><author>IoT_fast</author><pubDate>Tue, 18 Dec 2018 11:27:54 +0800</pubDate><description><![CDATA[Description
有一个M行N列的点阵，相邻两点可以相连。一条纵向的连线花费一个单位，一条横向的连线花费两个单位。某些点之间已经有连线了，试问至少还需要花费多少个单位才能使所有的点全部连通。
Input
第一行输入两个正整数m和n。 以下若干行每行四个正整数x1,y1,x2,y2，表示第x1行第y1列的点和第x2行第y2列的点已经有连线。输入保证|x1-x2|+|y1-y2|=1。
Outp...]]></description><category></category></item><item><title><![CDATA[leetcode-125.验证回文串]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85048332</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85048332</guid><author>IoT_fast</author><pubDate>Mon, 17 Dec 2018 13:52:21 +0800</pubDate><description><![CDATA[描述
给定一个字符串，验证它是否是回文串，只考虑字母和数字字符，可以忽略字母的大小写。
说明：本题中，我们将空字符串定义为有效的回文串。
示例 1:
输入: “A man, a plan, a canal: Panama”
输出: true
示例 2:
输入: “race a car”
输出: false
源码
class Solution {
      private boolean isAl...]]></description><category></category></item><item><title><![CDATA[CCF CSP 元素选择器]]></title><link>https://blog.youkuaiyun.com/IoT_fast/article/details/85016715</link><guid>https://blog.youkuaiyun.com/IoT_fast/article/details/85016715</guid><author>IoT_fast</author><pubDate>Sat, 15 Dec 2018 18:52:03 +0800</pubDate><description><![CDATA[



解析
参考blog:元素选择器
大佬的代码真是思路清晰，而且代码风格有很强的编程技巧性，看来还是任重而道远啊！加油！
#include &amp;amp;lt;iostream&amp;amp;gt;
#include &amp;amp;lt;fstream&amp;amp;gt;
#include &amp;amp;lt;vector&amp;amp;gt;
#include &amp;amp;lt;stack&amp;amp;gt;
#include &amp;amp;lt]]></description><category></category></item></channel></rss>