❥ACM学习
搬运代码打工人
分享学习
记录日常
展开
-
ACM比赛中如何加速c++的输入输出
ACM比赛中如何加速c++的输入输出?如何使cin速度与scanf速度相当?什么是最快的输入输出方法?转载 2018-07-23 00:07:43 · 618 阅读 · 0 评论 -
UVA10325 The Lottery(容斥原理)(简单)
给n,m,和m个数(k1~km)。求1~n中有多少个数不是(k1~km)中任意一数的倍数。题解:容斥模板题。反面考虑,a的倍数有n/a个;既是a,也是b的倍数,即lcm(a,b)的倍数有n/lcm(a,b)个。是a,b,c的倍数,即lcm(a,b,c)的倍数有n/lcm(a,b,c)个。#include<iostream>#include<cstdio>转载 2018-07-23 00:02:25 · 281 阅读 · 0 评论 -
gcd
//普通递归int gcd(int a, int b){ if(b == 0) return a; else return gcd(b, a%b);}//普通非递归int gcd2(int a, int b){ while(b != 0) { int temp = b; b = a%b; ...原创 2018-07-23 00:05:28 · 195 阅读 · 0 评论 -
ACM——关于素数
void init(){ memset(isprime, 0, sizeof(isprime)); for(int i = 2; i <= n; i++) { if(isprime[i]) prime[t++] = i; for(int j = i*i; j < n; j++) i...原创 2018-07-23 00:03:26 · 319 阅读 · 0 评论 -
ACM——必备模块(常更新)
//打印void printArray(Type A[], int size) //参数是数组名和数组的长度{ for (int i = 0; i < size; i++) cout << A[i] << " "; cout << endl;}原创 2018-07-23 00:03:16 · 647 阅读 · 0 评论 -
ACM_求相邻最小素数
Describtion胖胖斌的数学不太好,这天数学老师要让他在L和U(1<=L<U<=2147483647)之间找出两个相邻素数C1和C2(L<=C1<C2<=U)使他们距离最小。如果有多对答案,输出第一种即可。聪明的你可以帮他解答吗?Input每行输入两个正整数,即L和U,L<U。L和U的差不超过1000000。有多组输入数据Ou原创 2018-07-23 00:03:01 · 434 阅读 · 0 评论 -
容斥原理
容斥原理(翻译)推荐简单题转载 2018-07-23 00:02:52 · 165 阅读 · 0 评论 -
acm_stl
分析时间复杂度stl学习 sort 排序函数 sort(a, a+100) 即前开后闭a-a+99 sort(a, a+100, cmp);栈:建议手写include using namespace std; queue q;『如何用两个栈实现一个队列』 重点:从先进先出到后出→→{\to}先进后出C++中stl用法总结1.1什么是STL?ST...转载 2019-05-22 00:05:00 · 166 阅读 · 0 评论 -
DFS与BFS
DFSDescription AveryBoy最近迷上了连连看游戏,于是他自己写了一个程序来玩,不过由于他学艺不精导致他写的连连看游戏连线不能从外面绕过。游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子),而且线的转折次数不超过两次,那么这两个棋子就可以在棋盘上消去。玩家鼠标先后点击两块棋子,试图将他们消去,然后游戏的后台判断这两...转载 2019-05-22 00:06:15 · 143 阅读 · 0 评论 -
动态规划思想
剑指Offer——动态规划算法什么是动态规划? 和分治法一样,动态规划(dynamic programming)是通过组合子问题而解决整个问题的解。 分治法是将问题划分成一些独立的子问题,递归地求解各子问题,然后合并子问题的解。 动态规划适用于子问题不是独立的情况,也就是各子问题包含公共的子子问题。 此时,分治法会做许多不必要的工作,即重复地求解公共的子问题。动态规划算法对每个子问...原创 2019-08-05 12:41:47 · 746 阅读 · 0 评论 -
第九天(1):简单查找问题
T1找 x时间限制:1 秒内存限制:32 兆特殊判题:否题目描述: 输入一个数 n,然后输入 n 个数值各不相同,再输入一个值 x,输出这个值在这个数组中的下标(从 0 开始,若不在数组中则输出-1) 。输入: 测试数据有多组,输入 n(1<=n<=200),接着输入 n 个数,然后输入 x。输出: 对于每组输入,请输出结果。样例输入:21 30样例输出: -1...原创 2019-08-13 20:41:38 · 143 阅读 · 0 评论 -
第九天(2):贪心算法
T1FatMouse’ Trade时间限制:1 秒内存限制:128 兆特殊判题:否题目描述: FatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse containing his favorite food, JavaBean.The warehouse h...原创 2019-08-13 21:36:20 · 205 阅读 · 0 评论 -
第六天:日期类题目
T1日期差值时间限制:1 秒内存限制:32 兆特殊判题:否题目描述: 有两个日期, 求两个日期之间的天数, 如果两个日期是连续的我们规定他们之间的天数为两天输入: 有多组数据,每组数据有两行,分别表示两个日期,形式为 YYYYMMDD输出: 每组数据输出一行,即日期差值样例输入: 20110412 20110422样例输出: 11T2Day of week时间限制:1 秒...原创 2019-08-11 11:22:24 · 146 阅读 · 0 评论 -
第七天:Hash用法
T1统计同成绩学生人数时间限制:1 秒内存限制:32 兆特殊判题:否题目描述: 读入 N 名学生的成绩,将获得某一给定分数的学生人数输出。输入: 测试输入包含若干测试用例,每个测试用例的格式为第 1 行:N第 2 行:N 名学生的成绩,相邻两数字用一个空格间隔。第 3 行:给定分数 当读到 N=0 时输入结束。 其中 N 不超过 1000, 成绩分数为 (包含) 0 到 100 ...原创 2019-08-11 11:26:47 · 342 阅读 · 0 评论 -
第八天:排版问题
T1 输出梯形时间限制:1 秒内存限制:32 兆特殊判题:否题目描述: 输入一个高度 h,输出一个高为 h,上底边为 h 的梯形。输入: 一个整数 h(1<=h<=1000)。输出: h 所对应的梯形。样例输入:4样例输出: **** ****** ******************//// main.cpp// Print...原创 2019-08-12 21:23:33 · 261 阅读 · 0 评论 -
ACM_快速幂取模
Input 输入包含多组测试数据,第一行是测试数据的个数T。 之后的T行,每行一个数n。(1&amp;lt;= n &amp;lt;= 1e9) Output 输出T个n^n的个位数。Sample Input 2 3 4 Sample Output 7 6法一(比较好理解)#include&amp;lt;iostream&amp;gt;using namespace s转载 2018-07-23 00:06:56 · 335 阅读 · 0 评论 -
中国剩余定理
中国剩余定理转载 2018-09-07 10:30:21 · 106 阅读 · 0 评论 -
可以常用的函数模板:打印数组
可以常用的函数模板:打印数组转载 2018-07-23 00:07:32 · 369 阅读 · 0 评论 -
C++使用system pause 暂停窗口
[C++使用system( “pause “);来暂停黑窗口]写的很好,就是排版有点迷(https://blog.csdn.net/haiross/article/details/45093351) 在编写的c++程序中,如果是窗口,有时会一闪就消失了,如果不想让其消失,在程序中添加: system(“pause”); 注意:不要再return 的语句之后加,那样就执行不到了。...转载 2018-07-23 00:07:24 · 2695 阅读 · 0 评论 -
C++中常用的输入输出方式
ACM学习历程2——ACM题目中常用的输入输出方式转载 2018-07-23 00:07:17 · 586 阅读 · 0 评论 -
ACM 矩阵快速幂 取模
矩阵快速幂取模转载 2018-07-23 00:07:10 · 297 阅读 · 0 评论 -
c++关于~scanf()简析
~scanf()简析转载 2018-07-23 00:07:03 · 2220 阅读 · 0 评论 -
ACM_快速幂取模_应用
给你一个数n,代表有1到n这n个数。要你把它们排成一个漂亮的排列。 漂亮的排列是满足下面条件之一的排列: 1. a1…ai递增,ai…an递减 2. a1…ai递减,ai…an递增Input 有多组输入,少于1000组。 每组测试数据有两个数:n,p。(1&lt;= n,p &lt;=1e18) Output 对于每组测试数据,输出一行答案,个数%p。Sample Input...转载 2018-07-23 00:06:48 · 260 阅读 · 0 评论 -
Ubuntu下codeblock安装和配置
Ubuntu下codeblock安装和配置Ubuntu下codeblocks安装配置方法及opencv配置方法转载 2018-07-23 00:06:33 · 386 阅读 · 0 评论 -
Ubuntu下code::blocks__解决g++: error: obj/Debug/main.o No such file or dictionary
解决g++: error: obj/Debug/main.o No such file or dictionary就是路径中含有中文或不允许的特殊字符原创 2018-07-23 00:06:24 · 2398 阅读 · 2 评论 -
C++宏定义的使用
C语言宏定义作用、使用方法小结C语言宏定义作用、使用方法小结(2)转载 2018-07-23 00:06:11 · 290 阅读 · 0 评论 -
acm中#define的应用
//不解释,直接上例子#include &amp;amp;lt;iostream&amp;amp;gt;#include &amp;amp;lt;fstream&amp;amp;gt;using namespace std;#define lson l , m , rt &amp;amp;lt;&amp;amp;lt; 1 #define rson m + 1 , r , rt &amp原创 2018-07-23 00:06:05 · 369 阅读 · 0 评论 -
二进制--状态压缩
Description现推出了N(N &amp;lt;= 20)种营养套餐,每一种套餐包含两种食物,这两种食物各自包含有自己的营养价值x(0 &amp;lt;= x &amp;lt;= 1e6),怎样从在这N种套餐中,每种套餐中选择一种食物,使得最后这些食物的营养价值异或和sum最大(N个数的异或和是指N个数相异或的结果,一个数的异或和为自身)。Input第一行一个整数T(T &amp;lt;= 5)代表测试数...转载 2018-07-23 00:05:44 · 452 阅读 · 0 评论 -
约瑟夫环问题详解
约瑟夫环问题详解转载 2018-09-07 10:30:10 · 174 阅读 · 0 评论 -
C++ STL 全排列函数详解
C++ STL 全排列函数详解转载 2018-09-04 11:54:37 · 367 阅读 · 0 评论 -
第十三天:Huffman树 + 二叉树
T 1哈夫曼树时间限制:1 秒内存限制:32 兆特殊判题:否题目描述: 哈夫曼树,第一行输入一个数 n,表示叶结点的个数。需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即 weight,题目需要输出所有结点的值与权值的乘积之和。输入: 输入有多组数据。每组第一行输入一个数 n,接着输入 n 个叶节点(叶节点权值不超过 100, 2<=n<=1000)...原创 2019-08-17 21:00:11 · 81 阅读 · 0 评论