摘要: 题目大意是输入n和k,n是学生的数量,k是饮料种类,接下来的n行会输入每个学生想要的饮料的编号(1~k),分配饮料是按一对一对分,每一对都是类型相同的饮料 要求输出能得到自己想要饮料的最大学生数量 首先定义两种类别,一种是goods类别,若两个人都想要同一种饮料,那他们就可以被归类为goods,只有 阅读全文
posted @ 2019-07-19 23:50 zuo_ti_jia 阅读(392) 评论(0) 推荐(0) 编辑
摘要: 加一再除二 阅读全文
posted @ 2019-07-19 21:58 zuo_ti_jia 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 大体思路是用一个栈存输入语句,读到F开头的语句就压进栈里,读到E开头的就从栈顶出一个元素,用一个w记录时间复杂度,出栈时只要语句满足条件w就加1 xSy函数是用来判断一个语句中x变量是否小于y变量的,具体内容不多讲,很好实现 **********************************AC* 阅读全文
posted @ 2019-07-18 16:57 zuo_ti_jia 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 因为不管是奇数行还是偶数行,该行与上一行的方向都是反着来的 可以先求出顺着来时这个结点对应的父结点,再求出对应父结点在它所在行对称的结点 这里有个求对称的方法:按顺序排列且每个数都能找到对称数的一系列数,每一对对陈数的和都相同,所以求某个数的在某一行的对称数,只用找出这一行两端的数,求出和,再减去这 阅读全文
posted @ 2019-07-18 16:39 zuo_ti_jia 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 要求是实现快速排序 但是给的测试数据刚好是快速排序最快情况(还不太了解什么时候是最坏情况,得补补),会让快速排序的时间复杂度退化到O(n^2) 所以必须要随机选取基数或者每次快排区间的中间数为基数 然后我在一开始犯了一个很大的错误,这个问题在于我还是以拿第一个数作为快排基数的方式在进行快排,然而我没 阅读全文
posted @ 2019-07-16 16:33 zuo_ti_jia 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 分子为该无限循环单元,分母为9999........(该循环单元位数个9) 然后可以通过求分子分母最大公因数的方法化简这个分式 阅读全文
posted @ 2019-07-11 15:23 zuo_ti_jia 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 今天了解了筛选素数,这种方法会比直接暴力找素数要快得多 筛选素数应该有很多种方法,我目前知道的这种大概思路是: 开辟一个大数组,假定数组的下标就为代表的这个数,值为0或1。一开始将数组都置为1,然后开始从下标为2的数组开始遍历,通过判断数组元素是否为1判断是否为素数,如果为素数,则将其倍数都改为0( 阅读全文
posted @ 2019-07-11 00:02 zuo_ti_jia 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 才知道cin和cout的速度会比scanf和printf慢,在这个上面栽了跟头,以后打比赛之类的得注意 阅读全文
posted @ 2019-07-10 23:54 zuo_ti_jia 阅读(167) 评论(0) 推荐(0) 编辑
摘要: int* corpFlightBookings(int** bookings, int bookingsSize, int* bookingsColSize, int n, int* returnSize){ int *arr = (int*)malloc(sizeof(int)*n); for(int i=0; i<n; i++) arr[i] = 0; ... 阅读全文
posted @ 2019-07-09 10:01 zuo_ti_jia 阅读(423) 评论(0) 推荐(0) 编辑
摘要: #include typedef struct product{ int price; int sale; }Product; int main(void){ int expect; int price, sale; int ogPrice, ogSale, maxPrice=0; Product p[10050]; for(int i=0; i ma... 阅读全文
posted @ 2019-07-06 22:41 zuo_ti_jia 阅读(158) 评论(0) 推荐(0) 编辑