acm

STL-string用法

血红的双手。 提交于 2020-01-28 12:52:18
1 #include <string> 2 #include <iostream> 3 #include <cstring> 4 #include <algorithm> 5 6 using namespace std; 7 8 int to_lower(int c) 9 { 10 if (isupper(c)) 11 { 12 return (c+32); 13 } 14 15 return c; 16 } 17 18 int to_upper(int c) 19 { 20 if(isupper(c)) 21 { 22 return (c-32); 23 } 24 return c; 25 } 26 27 int main() 28 { 29 // 初始化string 30 string s1="ACM"; 31 32 string s2("ACM"); 33 34 string s3=s2; 35 36 //string s4(10,"ACM"); 37 string s4(10,'A'); 38 // 第四种初始化方式,只能初始化单个字符 39 40 cout<<s1<<endl; 41 cout<<s2<<endl; 42 cout<<s3<<endl; 43 cout<<s4<<endl; 44 45 46 cout<<"数组方式遍历:"<<endl; 47 //

c++ ACM常用函数

喜你入骨 提交于 2020-01-28 09:18:16
1 保留小数点后两位 #include <iomanip> cout << setiosflags(ios::fixed) << setprecision(2)<< getAdd(num) << endl; 2 截取字符串 类似spilt #include <string> const char * spilt="/"; char *p; p=strtok(str,spilt); while(p!=NULL) { //cout << p << endl; num[i++]=atoi(p); p=strtok(NULL,spilt); } 3 自动排序 sort函数 #include<algorithm> #include<vector> sort(Rs.begin(),Rs.end()); sort(Rs.begin(),Rs.end(),greater<double>()); 4 开方函数 #include<cmath> return 2*sqrt(R*R-b*b/4); 5断点调试 cout << "cout%len " << count%len << ' ' << "num " << num << endl; 6基本格式 #include <iostream> using namespace std; int main() { int count; while(cin >>

2020 我把大学四年ACM模板分享了出来【总结】 ACMer一定要来看!

*爱你&永不变心* 提交于 2020-01-27 13:20:43
文章目录 1、引言 2、心得与体会 3、分享模板 1、引言 大二下学期正式入ACM,大家一看这时间就知道算是挺晚的了,因为我大一比较迷茫,没有在大学加过任何部门,学习也提不上什么劲,大二上开始有了自己的想法,在班上成功竞选上了学习委员,然后我越发积极,在大二上的寒假假期独自在家刷题,目的就是为了蓝桥杯,初赛挺适合新手锻炼的,刷题目的就是为了学校的选拔赛,争取名额,后面当然得到了名额,最后在比赛也取得了省二的成绩,这让我无比激动,原来付出真的有回报,从此我的ACM生涯就开始了! 推荐阅读这篇文章——2019年(第15届)湖南省大学生计算机程序设计竞赛之【赛前动员暨暑假集训总结】 2、心得与体会 有的时候,感觉自己刷题刷不动的时候,我就会看一看大神关于退役的总结,没想到今天自己也会来总结了,我就简单和大家聊一聊ACM把 走上ACM,就像一个表情包所说,本就是逆天而行, 很多人走着走着就放弃了,打不动了,学习到了瓶颈期,其实并不是ACM他们会放弃,做其他的也依旧会放弃。 我曾经问过打过ACM然后放弃的一位学长,因为当时我也在考虑自己是继续打下去还是放弃乖乖增加项目经验,他说 打ACM对找工作其实没有很多帮助,因为对于普通学校来说,或者对于普通人来说,想要拿到那种区域赛的奖是有一定难度的,真正有帮助的还是去实践增加项目经验,后面补了一句当初有点后悔自己去打acm,花费了很多时间在这上面

计算机方向的一些顶级会议和期刊

时光总嘲笑我的痴心妄想 提交于 2020-01-27 08:16:01
IEEE TRANSACTIONS ON COMPUTERS Computer Vision Conf.: Best: ICCV, Inter. Conf. on Computer Vision CVPR, Inter. Conf. on Computer Vision and Pattern Recognition Good: ECCV, Euro. Conf. on Comp. Vision ICIP, Inter. Conf. on Image Processing ICPR, Inter. Conf. on Pattern Recognition ACCV, Asia Conf. on Comp. Vision Jour.: Best: PAMI, IEEE Trans. on Patt. Analysis and Machine Intelligence IJCV, Inter. Jour. on Comp. Vision Good:CVIU, Computer Vision and Image Understanding PR, Pattern Reco. Network Conf.: ACM/SigCOMM ACM Special Interest Group of Communication… ACM/SigMetric 这个系统方面也有不少的 Info Com

ACM道路之一:基础算法(快速排序)

删除回忆录丶 提交于 2020-01-22 21:03:31
快速排序(qsort) 本质是分治思想 排序的一次划分算法从两头交替搜索,直到low和high重合,因此其时间复杂度是O(n);而整个快速排序算法的时间复杂度与划分的趟数有关。 快速排序三个步骤 1、确定区域,左边界(l),右边界(r),基准值(x = l+r>>2) 2、保证区间内,x左侧的任意值小于x,x右侧的任意值大于x 双头指针:i,j 分别从左边界、右边界向中间移动,下标为i的值大于x时,指针i停止移动,j同理 此时(i,j均停止移动,表明 q[i]>x&&q[j]<y) 交换两个值 swap(q[i],q[j]); 3、递归完成小区间的排序(l,j)(j+1,r) 给定你一个长度为n的整数数列。 请你使用快速排序对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行,第一行包含整数 n。 第二行包含 n 个整数(所有整数均在1~ 10 9 109范围内),表示整个数列。 输出格式 输出共一行,包含 n 个整数,表示排好序的数列。 数据范围 1 ≤ n ≤ 100000 1≤n≤100000 输入样例: 5 3 1 2 4 5 输出样例: 1 2 3 4 5 解法1:直接利用[algorithm]头文件中的sort()函数完成排序 #include<bits/stdc++.h> using namespace std; const int N

ACM寒假集训——因子求和

二次信任 提交于 2020-01-22 09:11:53
题目描述 已知一个正整数N(20 <= N <= 800000000),请你编写程序求出该数的全部因子(不包括1)的和。 输入 N 输出 一个整数(因子和) 样例输入 复制 24 样例输出 复制 35 提示 24的因子有: 2、3、4、6、8、12,其和为 35 题目思路:本题直接用for循环到n的话会超时,所以就需要对n求平方根。平方根内有n的因子的话,平方根外肯定有对应的因子。并且在判断平方根的时候,要判断平方根是不是整数,如果是整数的话则此时的平方根只需要加一次就可。 ac代码: #include<stdio.h> #include<math.h> int main() { long long int n,sum=0; double a; scanf("%lld",&n); a=sqrt(n); int temp=a; if(temp*temp n) { for(int i=2;i<=sqrt(n);i++) { if(n%i 0&&i!=sqrt(n)) { sum+=i+(n/i); } if(i==sqrt(n)) { sum+=i; } } } else { for(int i=2;i<=sqrt(n);i++) { if(n%i==0&&i!=sqrt(n)) { sum+=i+(n/i); } } } printf("%d",sum); return 0; }

2018 ACM 国际大学生程序设计竞赛上海大都会赛

梦想与她 提交于 2020-01-21 23:15:10
传送门: 2018 ACM 国际大学生程序设计竞赛上海大都会赛 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 2018-08-05 12:00:00 至 2018-08-05 17:00:00 时长: 5小时 比赛情况 实录 难度差不多介于省赛和区域赛之间吧。开题A是计算几何,有点思路后就先放下去写签到题,B读错题WA一发,K直接套模板,然后就接着看A。之前写过类似题,没注意数据范围就头铁地交了发n3的代码,TE后才发现数据范围是之前那道十多倍,就听学长的先看D。推十分钟公式无果后打算直接暴力打表,算到最后三个多边形时,HSQ大佬先推出公式(Orz),改过精度问题之后也过了就回去改A。改成n2代码后还是TE,至此一切都结束了。 总结 太TM菜,四个月了还是只能写基础题 B,K签到;D题靠HSQ推公式,还卡了下精度问题; A题计算几何,优化到n2,但没想到随机算法,在这题耽误的时间太多; F题扫描线,但没看就比较傻逼;J题数位DP劝退;C题计算几何+大数;E题枚举 大专栏 2018 ACM 国际大学生程序设计竞赛上海大都会赛 中点,HASH+二分;H题线段树; G-无解的神题;L快速数论变换(NTT); 解题报告 4类题解肯定没有的,3类题解先填坑,慢慢补吧。 A Fruit Ninja B Perfect Numbers(签到) C Rescue D Thinking

ACM.结构体排序和桶排序

心不动则不痛 提交于 2020-01-21 05:20:03
#结构体排序 ##sort函数 sort是c++自带函数 复杂度 n*log(n) 包含在头文件 #include的c++标准库里 函数有三个参数 1.要排序的数组的起始地址 2.数组的结束地址 3.第三个参数是排序的方法,可以不写,默认是从小到大 4.从小到大可以写成sort(a,a+n,less<数据类型>) 5.从大到小可写成sort(a,a+n,greater<数据类型>) ###cmp函数写法 比如按照成绩高低排序从高到低 bool cmp1(stu a,stu b) { return a.chengji>b.chengji; } #桶排序 过程好理解,主要为开一个大数组每一项初始值记录为0,每当出现对应的数字是,对应元素++。 代码如下: # include <stdio.h> int main ( ) { int a [ 11 ] , i , j ; for ( i = 0 ; i < 11 ; i ++ ) { a [ i ] = 0 ; } int n ; //人数 scanf ( "%d" , & n ) ; int t ; //用t接收分数 for ( i = 0 ; i < n ; i ++ ) { scanf ( "%d" , & t ) ; a [ t ] ++ ; } for ( i = 0 ; i < 11 ; i ++ ) { for ( j =

ACM注意事项总结,持续更新

China☆狼群 提交于 2020-01-18 06:43:37
acm注意事项 坑一:题目 注意题目输入是 多组还是单组 注意题目中 各字母的顺序(戏说三国!!!) 注意题目中的 数据关系数据类型 ,该咋咋的 注意 题目中的输出顺序(林大oj健忘的小和尚) 坑二:实现 注意地址符**&** 注意 循环结束条件以及起始点 写代码时,变量命名需尽量 直观易懂 ,变量个数尽量控制,太多的话, debug时会疯掉!!! 多组输入 注意变量清 0 ! (最好在循环开始处,初始化变量!) 根据数据量选择合适的方法( 例如暴力和木桶sort ) 来源: CSDN 作者: 把键盘给我敲烂!! 链接: https://blog.csdn.net/QWERKSDFMKD/article/details/103796514

1.11 acm结束了,所以寒假学习Java基础

戏子无情 提交于 2020-01-11 14:30:54
从正式入acm集训队后有一年有余,而今天打算结束了,这就是说,我今天晋级赛失败了。 而这一年多来所获得的是一块聊胜于无的区域赛铜牌,和一堆拖拖拉拉学的并不精通的初级的竞赛算法,而已。现状并不会令人过于悲伤,虽然就结果而言——走到今天,1月11日,然后结束了——这大抵会使人泄气,但换个角度,这其实就像暗黑地牢(指最近在玩的游戏)里面删档从开一样平常。 如果我再卑鄙一点,我就会说:"害!这次只是因为开错题了,下次晋级赛我一定会成功的。”而现在,这卑鄙的想法一直在我脑海中回荡。也许事实确实如此,但所以呢?下次晋级以后呢?问题并不是在这里,并不是出在此次晋级失败这件事情上,而是出在算法竞赛这件事之上的某些更高的层次上。 回过头想,我也许本身就没有对算法十分的热情( 但也大概有0.7,0.8*(十分热情) ),而是对竞赛拿奖更有热情。而热情真的是一件很重要的东西。热情也就是毛概课上柳老师所讲的力量,我常想把它翻译成英文,就是power,在翻译回来,就是为电器提供的电源之类。power是人自发产生的,他的产生契机或是先天(天赋),或是后天(偶然获得兴趣),但就结果而言,先天后天没有十分大的区别。人若有某一方面的power,就会自发的坚定不移的朝那一方面的高地攀登。而没有的话,则会按部就搬,走一步,歇两步,最终碌碌无为。 而没有某方面power的人若没有偶然获得兴趣的机会,他若仍想前往高地