一.相邻对数
以vector存储数据后需要进行排序,可以使用algorithm的sort(vec.begin(), vec.end(), method)。没有第三个参数按从小到大排列。
bool method(int a,int b) //从大到小排列函数
{
return a>b;
}
二.门禁
显然对于重复出现数字的计数使用map最为合适,同时需要一个vector存储记录的相对位置。
每次记录输入,使用map计数,再将计数后的值赋给vector变量,因为vector与输入顺序对应,所以输出顺序对应。
三.图像旋转
假设数据以此顺序存储在二维数组中1 5 3 3 2 4
平面图:
1 5 3
3 2 4
输出图:
3 4
5 2
1 3
分析输出顺序: 3 4 5 2 1 3 ,看成从列三(横一,横二),列二(横一,横二),列二(横一,横二),即列倒序,横顺序输出。
四.日期计算
闰年:(能被4整除)或者(能被400整除且不能被100整除) 二月份29天
叠加每月天数
五.数列分段
数组存储输入整数,循环之,当 (当前数)与(后一个数)不同时增一。注意比较时i的范围不要超过数组范围。