ACM
MaxVen
这个作者很懒,什么都没留下…
展开
-
C语言报错速查
Ambiguous operators need parentheses不明确的运算需要用括号括起Ambiguous symbol ``xxx`` 不明确的符号Argument list syntax error 参数表法Array bounds missing 丢 失数界限符Array size toolarge数尺寸太大Bad character in paramenters参数中有不适当的字符Bad file name format in include direc原创 2020-12-02 21:23:55 · 328 阅读 · 0 评论 -
C程序运行时间测试_时间复杂度_类型范围_
程序运行时间测试#include <iostream>#include <ctime>//需要包含这个头文件,在C中使用<time.h>using namespace std;int main(){clock_t start,end;start=clock();/*程序编写代码部分*/for(int i=0;i<1000000000;i++);/*程序编写代码部分*/end=clock();cout<<end-start<&原创 2020-12-02 21:18:41 · 342 阅读 · 0 评论 -
C++比较实用基础知识
一、1.typedef 重命名库函数(如int ___typedef int INT;)2.gets(m); 容易出现吞掉空格和回车的情况,尽量使用scanf("%s",&m);二、三.副标题【出入输出方式】1.几种换行 —— printf("\n");——putchar(’\n’);2.输入/输出字符串 char str[6]=“array”;___scanf("%s",str);___printf("%s",str);单个字符 ch=getchar();___pu原创 2020-12-02 21:00:42 · 100 阅读 · 0 评论 -
基础/带权/种类 并查集
I - 并查集 poj 1456问题分析:这题有多种解法 我用是结构体 加优先队列 (结构体可以换成pair)建立 天数 与 价格的结构体然后按照 价格进行排序开一个 cnt记录 所在天数(每天限制卖1中水果)从头扫到尾部 在这期间因为可能存在同一天但是确有多种选择保持cnt<=结构体的.day如果大于了就 检查 队首是否小于 新的 小就入队代码如下:#include<iostream>#include<cstdio>#include<cst原创 2020-11-26 21:11:12 · 138 阅读 · 0 评论 -
等比、等差数列及其求和公式
等差等比两个 基本的 公式原创 2020-11-17 19:20:12 · 592 阅读 · 0 评论 -
F Fraction Comparision(__int128,大数乘。38位)
F Fraction Comparision据说能处理数字长度34位以内的#include<iostream>#include<cstdio>#include<cstring>#include<bitset>#include<sstream>#include<string.h>#include<iomanip>#include<cmath>#include<algorithm&g原创 2020-11-05 10:26:21 · 93 阅读 · 0 评论 -
由数据范围反推算法复杂度以及算法内容
一般ACM或者笔试题的时间限制是1秒或2秒。在这种情况下,C++代码中的操作次数控制在 107107 为最佳。下面给出在不同数据范围下,代码的时间复杂度和算法该如何选择:n≤30n≤30, 指数级别, dfs+剪枝,状态压缩dpn≤100n≤100 => O(n3)O(n3),floyd,dpn≤1000n≤1000 => O(n2)O(n2),O(n2logn)O(n2logn),dp,二分,朴素版Dijkstra、朴素版Prim、Bellman-Fordn≤10000n≤1000原创 2020-11-04 17:14:52 · 138 阅读 · 0 评论 -
HDU 4911 Inversion
HDU 4911 Inversion归并排序求逆序对数量AC代码#include<iostream>#include<cstdio>#include<cstring>#include<bitset>#include<sstream>#include<string.h>#include<iomanip>#include<cmath>#include<algorithm>#i原创 2020-10-16 20:10:53 · 97 阅读 · 0 评论 -
蓝桥杯进制转换函数
代码演示:#include<iostream>#include<cstdio>// setbase(n) #include<cstdlib>// itoa(num,string,n) #include<iomanip>using namespace std;int main (){ int a,b,c; double f=169.99922;//oct 8 dec 10 hex 16 cin>>oct>>a原创 2020-10-06 16:11:31 · 230 阅读 · 0 评论 -
AcWing 831. KMP字符串
kmp 就是子串求出next 数组后当 子串 匹配主串时 某位置不匹配直接跳转到 子串 next数组位置节省了 前缀的 匹配时间 1 2 3 4 5 6 7 8 9 主:a a b a a b a a c 子:aabaac 010120 当主6位置和子6位置不匹配的时候 这时候不是从子串的 第一位开始 而是直接判断子串的第三位 和目前的i也就是第原创 2020-10-06 07:37:44 · 76 阅读 · 0 评论 -
Codeforces Round #667 (Div. 3) A-B-C
Codeforces Round #667 (Div. 3)A. Yet Another Two Integers Problem问题分析:就是简单的暴力枚举从 10依次往下扫AC代码:#include<map>#include<set>#include<cmath>#include<queue>#include<vector>#include<cstdio>#include<cstring>#in原创 2020-09-08 08:07:46 · 80 阅读 · 0 评论 -
ACM大数算法
文章目录大数乘AC代码最大公约数Ac代码大数乘简单的乘法,计算 A * bInput多组样例,每组样例两个整数A、B,每个整数的长度不超过 50000。Output对于每组样例,输出一行 A * bSample Input1210002Sample Output22000AC代码import java.math.BigInteger;import java.uti...原创 2020-04-21 07:09:29 · 256 阅读 · 0 评论 -
二分专题(789-整数二分,790-浮点数二分)
二分两个 注意点在求数字范围时 中点的确认再求某以固定数字时 左右均为中点值AcWing 789. 数的范围AC代码及详解//AcWing 789. 数的范围#include<iostream>#include<cstring>#include<cstdio>using namespace std;const int N...原创 2020-01-10 17:36:12 · 211 阅读 · 0 评论 -
TEST 32-36
POJ 2228 Naptime分析: 分两种情况不是环形直接动态规划是环形 加上第一个位置然后用 一串来判断最优解最后扫描 用一个 数把最大值存下AC代码#include<iostream>#include<cstdio>#include<cmath>#include<cstring>const int maxn=3850;...原创 2019-12-12 19:36:24 · 69 阅读 · 0 评论 -
潍坊学院 第四届校赛
虽然自己不是很重视,比赛的时候慌得一批,成绩也太不理想了、、、Problem G:Ak爷兼职计#include<bits/stdc++.h>using namespace std;string s[100005];int cmp(string a, string b){ return a+b>b+a;//只能是这个 不能是 a>b(1,14 返回的114 实际1...原创 2019-12-08 19:56:36 · 262 阅读 · 0 评论 -
一维/二维 前缀和及差分
AcWing 795. 前缀和听名字就是 数组当前位置 内部存的数 是他之前及本身的 和原本a[10]存的自己 现在 sum[0]=a[0],sum[1]=a[0]+a[1];以此类推。AC代码#include<iostream>using namespace std;const int N=1e5+10;int num[N];int main(){ int ...原创 2019-11-29 10:07:20 · 214 阅读 · 0 评论 -
HDU1087 Super Jumping! Jumping!(dp)
HDU1087 Super Jumping! Jumping!(TEST<32> 11.25)解题思路dp就是求前面的每一个位置的最大值然后依次往后更新太菜了 ,看着以前的模板才 AC出来…AC 代码如下#include<iostream>#include<algorithm>#include<cstring>using names...原创 2019-11-25 20:10:30 · 74 阅读 · 0 评论 -
Comet OJ - Contest #15 (B 当我们同心在一起)
Comet OJ - Contest #15 (B 当我们同心在一起)解题思路就是 一个点到另外三个点的 距离相等 呢么 这个点就是另外三个点组成三角形 的 外心 (仔细看题目中图)然后就是 统计 一个点到另外所有点的距离相等有多少对 这是看 赛后别人 写的总结出来的 很巧妙 用的 map<long long ,int> mp; 当做二维数组使用然后使用 迭代器 ...原创 2019-11-24 21:43:03 · 107 阅读 · 0 评论 -
ACwing 787. 归并排序
/* ACwing787. 归并排序*/#include<iostream>#include<cstring>#include<cmath>using namespace std;const int N=1e5+10;int num[N],temp[N];int n;void merge_sort(int l,int r){ i...原创 2019-11-24 20:34:24 · 112 阅读 · 0 评论 -
HDU 2844 Coins (多重背包->类01背包优化)
HDU 2844 Coins (多重背包->类01背包优化)(TEST<31> 11.20)解题思路看着就是 多重背包问题 在这里 进行了0/1背包的优化用dp【价值】=所能达到的最大价值来判定是否能够达到 这个 值关于0/1背包优化 解析(出自ACwing 基础算法视频第五章 第一节动态规划 )看 1023 数字之和能够组成 1023? 0-1023 枚举每...原创 2019-11-21 21:32:56 · 126 阅读 · 0 评论 -
HDU - 1114 Piggy-Bank(完全背包
HDU - 1114 Piggy-Bank TEST<30> 11-18解题思路…难受哇~ 完全背包的 模板题只不过时最小 问题下文ac代码使用 滚动数组 写法AC 代码如下#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>...原创 2019-11-18 20:38:17 · 169 阅读 · 0 评论 -
AcWing 快速排序(785,786)
模板题 AcWing 785. 快速排序#include<iostream>using namespace std;const int maxn=1e6+10;int num[maxn];void quick_sort(int num[], int l,int r){ if(l>=r) return ; int i=l-1,j=r+1; int ...原创 2019-11-18 21:42:00 · 238 阅读 · 0 评论 -
Max Sum HDU - 1003(dp)
周二 (10.16) TEST<19>A - Max Sum HDU - 1003解题思路 动态规划由于 要求 求出最大子区间和 并且 输出区间 起点/终点;分析: 所以存在 几种情况都是负数/0多段 正数 负数相间分布 类似于 ±±–++±2.1 前一段正数和 后一段负数 相加 得数为 正2.2 前一段正数和 后一段负数 相加 得数为 负对于第一种情况 ...原创 2019-11-09 18:25:53 · 89 阅读 · 0 评论 -
cf1203C C. Common Divisors(GCD)
#问题分析gcd + 优化 (一个数的因数至少有一半小于等于 sqrt(这个因数)#AC代码如下:#include<iostream>#include<cstring>#include<cmath>#include<set>using namespace std;const int maxn=4e5+3;long long nu...原创 2019-11-09 18:26:08 · 123 阅读 · 0 评论 -
POJ 3624 Charm Bracelet(0/1背包
POJ 3624 Charm Bracelet(TEST<29> 11.15)解题思路很明显的动态规划 0/1背包问题但是 内存限制 需要 用 滚动数组 来进行dp滚动数组优点:节约时间和 空间缺点: 丢失中间的 状态(物品选择与否)解决0/1背包问题 :就是对每一种物品 是否选择怎样选择才能 达到在 在一定的 空间 内 达到 最优每一种新空间最优解 的 产生 都...原创 2019-11-16 20:26:43 · 135 阅读 · 0 评论 -
CodeForces 455A Boredom(TEST<28> 11-13)
CodeForces 455A Boredom(TEST<28> 11-13)解题思路dp利用dp数组进行 尾端最优解的 存储maxn进行前一最优解的存储并用来实现偏移(不知道对不对)图解:AC 代码如下#include<iostream>#include<cstring>#include<cstdio>#include<c...原创 2019-11-14 21:26:14 · 114 阅读 · 0 评论 -
HDU 1176 免费馅饼 (TEST<28> 11-11)
HDU 1176 免费馅饼TEST<28>(11-11)解题思路从后往前推出每一秒每个位置的 最大馅饼的数量因为 每一秒 此位置的 馅饼总数量都是由前一秒可能的 3个位置 位移产生(+1,0,-1)每次每个位置都取最大值 呢么 最终 起点的 也是整个的最大值dp[][]数组作为最大值累计数组,a[][]作为馅饼掉落标记数组AC 代码如下#include <i...原创 2019-11-14 21:25:49 · 100 阅读 · 0 评论 -
HDU 2255 奔小康赚大钱(TEST<25> 11.01)待解决
HDU 2255 奔小康赚大钱(TEST<25> 11.01)解题思路还是一脸懵逼 可能有些知识储备不够,再看看情况吧 资源贴下CSDN1(O n4)CSDN2 (O n3)哔哩哔哩(很水 讲的啥呀…)蓝皮书 P349AC 代码如下CSDN 1#include <iostream>#include <cstring>#include &l...原创 2019-11-14 21:25:32 · 90 阅读 · 0 评论 -
HDU 1498 50 years, 50 colors (二分图的最小点覆盖)
HDU 1498 50 years, 50 colors(TEST<24> 10.30)解题思路类似有二分图的最大匹配这里是类似于二分图的最小点覆盖套用模板吧,,,,主要是有多个颜色要处理好AC 代码如下#include<iostream>#include<cstring>#include<cstdio>#include<cm...原创 2019-11-14 21:25:00 · 150 阅读 · 0 评论 -
POJ 3013 Big Christmas Tree(SPFA)
解题思路 模拟AC 代码如下原创 2019-11-14 21:24:41 · 97 阅读 · 0 评论 -
HDU 1068 Girls and Boys(二分匹配 匈牙利算法)
HDU 1068 Girls and Boys问题分析给与 多组 可能存在关系 要求找出 最少没有配对的人利用二分图法 匈牙利算法 编号指向另一个编号看做一条边求出最大可以匹配 的 对数详解看代码AC代码如下#include<iostream>#include<cstring>#include<cstdio>//scanf printf...原创 2019-11-09 18:26:26 · 129 阅读 · 0 评论 -
freopen()使用方法重定向版
代码如下#include<iostream>#include<cstdio>using namespace std;int main (){char a[100];#define io//提交时删除这个 #ifdef io freopen("a.txt","r",stdin);//在程序文件 下创建a.txt 导入题目数据到里面 //freopen...原创 2019-11-09 18:26:03 · 280 阅读 · 0 评论 -
After Training CodeForces - 195B(模拟)
B - After Training CodeForces - 195B解题思路 模拟球放 有球最少的篮子 并在此基础上尽量靠中间取模判定 位置 注意左右 奇数 偶数AC 代码如下#include<iostream>using namespace std;int main(){ int n,m; cin>>n>>m; for(int i ...原创 2019-11-09 18:25:58 · 79 阅读 · 0 评论 -
Ant Trip HDU (基础并查集) - 3018
周一(10.15) TEST<18>A - Ant Trip HDU - 3018解题思路 并查集 + 欧拉回路基础 并查集模板欧拉回路 : 走完图的所有边(回到起点) (欧拉图)欧拉通路:走完图的所有顶点(无需回到起点)(半欧拉图)欧拉性质 : 1.有零个奇点 ,存在欧拉回路2.有零个或两个奇点 ,存在欧拉通路(半)欧拉图只需要一笔// 非(半/欧拉)图 奇点数/2;...原创 2019-11-09 18:25:41 · 94 阅读 · 0 评论 -
字符串最大/小表示法 字符串哈希
字符串最大/小表示法例题 HDU 3374 String Problem()问题分析求 循环节用kmp 最小最大表示法直接套用模板最小/大表示法:开两个位置坐标 参数 i,j以及 跨度k(自己瞎起的名字,感觉很合适 噗…)利用while循环进行多级跳转比较(每一个位置为首字符串所有都比较一遍 i,j 各作为一个字符串的首位置 );还是看代码解析吧 _最好是自己对着代码推一遍例子(" ...原创 2019-11-09 18:25:39 · 137 阅读 · 0 评论 -
字典树哇 AC自动机哇 = _ =
字典树哇 AC自动机哇 = _ =例题 HDU 1251 统计难题解题思路 :字典树 原理:按照每个根向下发散 形成一棵 树这个题 需要在每一个字母处都做统计 (求前缀单词)开一个 二维数组和ant来 模拟树 root开始为0 作为 起点 t=str[i]-‘a’; 作为分支关键就是 ant 这是形成树的关键 ant用来区分每一个节点 这样二维数组 tree才能真正构建完...原创 2019-11-09 18:25:33 · 126 阅读 · 0 评论 -
kmp
KMP cekmp例题 HDU 1711 Number Sequence题目分析 : KMP 模板题kmp主要 依靠于 next[]数组查找进行优化(前后缀 最长公共子串长度)如何 优化的呢在查找的时候 在某一处匹配失败时可以直接通过 next[]数组进行跳转不用重头匹配 简化了查询步骤;比如 : (ABCAB AABB) ( ABCAB CSDFDS)当ABCA匹配成功而...原创 2019-11-09 18:25:24 · 99 阅读 · 0 评论 -
拓扑排序总结
The Summer Training Summary-- the second- 拓扑排序 hdu 1285问题分析 怎么说呢 拓扑排序 给我的感觉就是 一棵树 从树冠 往下每次遇到 比他的小的 就把它的入度+1 就往树下 走 然后从树冠 找入度为0 是就是一个 小树冠 其下拥有若干 小树 小分支的入度为0 意味着到了小树冠的底部但着并不意味着 这就是最小值 因为 可能还有比...原创 2019-11-09 18:25:20 · 110 阅读 · 0 评论 -
The Summer Training Summary(STL) -- the first
The Summer Training Summary-- the firstA - vector的使用 UVa 101关于vector 的几个注意点vector pp.push_back(); 送入数据p.insert() 指定位置指定元素,指定位置n个相同元素,指定位置 区间元素p.assign(); 赋值p.pop_back(); 移除最后一个数据p.erase()...原创 2019-11-09 18:25:13 · 130 阅读 · 0 评论 -
数论总结
数论 (由用使用markdown写的代码无法缩进篇幅较长…)A - 质数筛 LightOJ - 1370思路 : 运用了欧拉函数的一个性质 :当n为质数是 f(n)=n-1问题 给出 一个分数要求 竹子长度的欧拉函数大于等于分数由上述定理可知长度一定大于分数 只需要找到分数+1往上的一个素数减去1就是满足要求的最最短长度的最大的分数 !代码如下#include<iostream...原创 2019-11-09 18:24:58 · 140 阅读 · 0 评论