洛谷
文章平均质量分 75
席懿
这个作者很懒,什么都没留下…
展开
-
洛谷训练(2)新手村
一、简单字符串部分知识点总结:将字符转换成整型:a[i]-‘0’;复制字符串的方法:str2=str1.substr(index,length);从第index位置开始复制长度为length的字符串到str2中字符串反转可以使用algorithm中的reverse函数:reverse(str.begin(),str.end());熟记‘A’和‘a’的ASCII码分别为65...原创 2019-07-03 22:32:26 · 605 阅读 · 0 评论 -
简单散列表例题和简单DFS例题
P1056排座椅点击查看题目描述该题运用了散列表的思想对数据进行存储什么是散列表?散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。 ——维基百科若关键...原创 2019-07-13 10:00:43 · 765 阅读 · 0 评论 -
洛谷训练(3)时间复杂度分析、欧拉筛法求素数、next_permuatation()、sort()
一、时间复杂度分析在ACM比赛中,每道题都对时间和空间大小进行了限制。 有时不惜用空间换时间的方法来使题目AC。1. 只关注循环执行次数最多的一段代码int cal(int n) {int sum = 0;int i = 1;for (; i <= n; ++i) {sum = sum + i;}return sum;}其中第2、 3行代码都是常量级的执行时间,与...原创 2019-07-05 09:24:14 · 1424 阅读 · 0 评论 -
洛谷训练(4)P1022 计算器的改良、P1003铺地毯、P1464 Function
P1022 计算器的改良主要思路首先明确:所有的一元一次方程都可化为kx+b=0的形式,即可得到x=-b/k采用string存储输入的方程要注意多位整数的处理一旦遇到符号,前面的整数就累加进b;遇到字母,整数累加进k;特别注意最后一位整数要单独处理#include<bits/stdc++.h>using namespace std;//最终化成kx+b=0;...原创 2019-07-06 09:19:31 · 167 阅读 · 0 评论 -
归并排序+例题
归并排序+例题归并排序(Merge-Sort)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。以下图片转载自:简书 图解归并排序一、图示过程1、归并排序的过程2、合并两个有序数组的过...原创 2019-08-24 10:10:09 · 3830 阅读 · 0 评论 -
洛谷P1160队列安排(结构体数组模拟链表)
洛谷P1160队列安排嗯,这道题我想了好久,有几种思路,刚开始想用STL里的list直接做,但是我并不是很熟悉,遂放弃。最后还是采用了结构体数组直接模拟链表的方式。具体思路及实现过程看代码:#include<bits/stdc++.h>using namespace std;int n,m,k,p,vis[100002];//a[i].pre表示i的前一个数 a[i]....原创 2019-08-26 16:12:37 · 306 阅读 · 0 评论