C/C++
c
wow_awsl_qwq
这个作者很懒,什么都没留下…
展开
-
C++工程结构
如果工程中两个cpp文件中定义同样的函数,即使不在各自的h文件中声明,也不include,这样会出现如下的错误。只要include相应的头文件即可,即当前cpp文件中就有了相应的。与h文件同名的cpp文件,需要包含相应的。,所以工程结构都是围绕着。其他cpp文件要使用到的。原创 2023-02-19 15:40:45 · 836 阅读 · 0 评论 -
extern关键字的用法 C++
extern关键字会提升全局变量或者全局函数为跨文件访问。原创 2023-02-01 23:52:32 · 148 阅读 · 0 评论 -
C++ 和JAVA 中对容器传值的方式 、容器和类变量初始化
c++自动分配,java手动分配内存Java。原创 2022-08-12 14:46:18 · 337 阅读 · 0 评论 -
find lower_bound upper_bound
find(start,end,x)数组无序从左向右找第一个等于x的数,返回指针找不到返回end指针二分查找必须保证数组升序lower_bound(start,end,x)从左向右找第一个大于等于x的数,返回指针找不到返回end指针upper_bound(start,end,x)从左向右找第一个大于x的数,返回指针找不到返回end指针...原创 2022-04-22 12:15:54 · 185 阅读 · 0 评论 -
c++ 流加速
void fio(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);}原创 2022-04-19 23:22:13 · 888 阅读 · 0 评论 -
lower_bound() 和 upper_bound()
lower_bound()返回序列最左边的大于等于x的位置(指针或迭代器)upper_bound()返回序列最左边的大于x的位置(指针或迭代器)找不到所有元素都比x小返回last,如lower_bound(a,a+n,4)返回a+n举例序列a: 1 3 4 5lower_bound(a,a+n,4)会查找到原序列4的位置upper_bound(a,a+n,4)会查找到原序列5的位置...原创 2022-04-07 15:13:27 · 58 阅读 · 0 评论 -
Java和C++中switch语句的区别和联系 与用法
区别java可以使用的switch表达式:String ,int ,char (整数类型+String)c++可以使用的switch表达式:int ,char ,long long (整数类型)联系语法形式上一致javaString s = "a"; switch (s) { case "a": System.out.println("aaa"); break; case "b": System.out.p原创 2022-03-23 18:08:54 · 1702 阅读 · 0 评论 -
L2-028 秀恩爱分得快 (25 分) 两种解法,详细分析
L2-028 秀恩爱分得快 (25 分)古人云:秀恩爱,分得快。互联网上每天都有大量人发布大量照片,我们通过分析这些照片,可以分析人与人之间的亲密度。如果一张照片上出现了 K 个人,这些人两两间的亲密度就被定义为 1/K。任意两个人如果同时出现在若干张照片里,他们之间的亲密度就是所有这些同框照片对应的亲密度之和。下面给定一批照片,请你分析一对给定的情侣,看看他们分别有没有亲密度更高的异性朋友?输入格式:输入在第一行给出 2 个正整数:N(不超过1000,为总人数——简单起见,我们把所有人从 0 到原创 2022-03-19 11:05:34 · 3888 阅读 · 1 评论 -
c++ map和unorder_map 的区别
map:实现是红黑树,map内部所有的数据都是有序的,map的查询、插入、删除操作的时间复杂度都是O(logn)。此外,map的key需要定义operator <,对于一般的数据类型已被系统实现,若是用户自定义的数据类型,则要重新定义该操作符。unorder_map实现是哈希表,无序,存储时是根据key的hash值判断元素是否相同,即unordered_map内部元素是无序的。unordered_map的底层是一个防冗余的哈希表(开链法避免地址冲突)。unordered_map的key需要定义h原创 2022-03-16 15:47:45 · 1848 阅读 · 0 评论 -
C++ 容器和库函数的使用
sortsort(a,a+20);sort(v.begin(),v.end())容器遍历(迭代器) vector<int>::iterator it; for(it=v.begin();it!=v.end();it++) { }priority_queueclass mpair{ public : int id,w; public : mpair(int a,int b) { id=a;w=b; } bool operator <原创 2022-03-05 12:21:35 · 384 阅读 · 0 评论 -
关于GUI编程
原创 2022-01-01 20:27:46 · 278 阅读 · 0 评论 -
素数环问题 dfs+剪枝
1008: 素数环问题时间限制: 1 Sec 内存限制: 128 MB题目描述把1到20这重新排列,使得排列后的序列A满足:a. 任意相邻两个数之和是素数b. 不存在满足条件a的序列B使得:A和B的前k(0 <= k <= 19)项相同且B的第k+1项比A的第k+1项小。输入没有输入。输出输出A,两个数字之间用一个空格隔开,第一个数字前面和最后一个数字后面没有空格。提示本题不提供输出样例。#include <bits/stdc++.h>using nam原创 2022-01-01 13:46:12 · 65 阅读 · 1 评论 -
选择排序 冒泡排序 快速排序 归并排序模板 逆序对
快排和归并排序可以记一下#include <iostream>#include <bits/stdc++.h>using namespace std;int n,a[100005],tmp[100005];//稳定的排序:直接插入排序、冒泡排序、归并排序、桶排序 //不稳定的排序:希尔排序、直接选择排序、堆排序、快速排序//简单选择排序,最好O(n2),不稳定:比如:5 5 1 void selsort(){ for(int i=0;i<n-1;++原创 2021-12-28 15:27:18 · 401 阅读 · 0 评论 -
openjudge_noi
11.538 计算多项式的导函数#include<iostream>#include<stdio.h>#include<string>using namespace std;int main(){ int casenum;casenum=1; while(casenum--) { int n; cin>>n; int a[n+1]; for(int j=n;j>=0;--j) { cin>&g原创 2021-10-01 19:16:45 · 341 阅读 · 0 评论 -
POJ 3126 Prime Path 素数筛+bfs
题目链接:http://poj.org/problem?id=3126#include <iostream>#include <time.h>#include<stdlib.h>#include<math.h>#include<cstdio>#include<queue>using namespace std;const int maxn=10010;bool vis[maxn];int prime[maxn/3];原创 2021-12-18 20:30:56 · 324 阅读 · 0 评论 -
男女出生比例程序模拟c++
模拟:男女出生概率相等的情况下,家庭偏爱生男孩结果:出生率只和出生概率有关,和生娃策略无关#include <iostream>#include <ctime>#include <cstdlib>using namespace std;long long male,female,n,t;const int N=1e7;int main(){ n=N; srand( (unsigned)time( NULL ) ); rand(); whi.原创 2021-12-15 09:25:13 · 1126 阅读 · 0 评论 -
地宫取宝 DP
#include <iostream>using namespace std;const int N=55,maxw=14;const int MOD=1000000007;int i,j,u,v,ans,w[N][N],n,m,k,f[N][N][13][maxw];int main(){ cin>>n>>m>>k; //输入 for(i=1;i<=n;++i) { for(j=1;原创 2021-12-12 11:49:19 · 308 阅读 · 0 评论 -
C++ inline 的用法
1、引入 inline 关键字的原因在 c/c++ 中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题,特别的引入了 inline 修饰符,表示为内联函数。栈空间就是指放置程序的局部数据(也就是函数内数据)的内存空间。2、inline使用限制inline 的使用是有所限制的,inline 只适合涵数体内代码简单的涵数使用,不能包含复杂的结构控制语句例如 while、switch,并且不能内联函数本身不能是直接递归函数(即,自己内部还调用自己的函数)。3、inline仅是一个对编译器的建原创 2021-12-11 22:58:53 · 78 阅读 · 0 评论 -
NCCCU 20国赛模拟题 C++
1-1内存限制 64MB单组时间 1Sec 通过 204次 提交 3508次mokit题目描述Excel表列名称由字母A~Z组成,列字母的规律如下:A、B、C…Z、AA、AB…AZ、BA、BB…ZZZZY、ZZZZZ…,现在请你计算2列之间含有多少列单元格。输入说明1行,用空格分分隔的2个字符串,分别表示列名称,字符串长度均小于等于5。输出说明1行,一个整数,表示两个列之间包含的列数。输入样例复制AA AZ输出样例复制24#include<bits/stdc++.h>原创 2021-12-11 15:47:48 · 1600 阅读 · 0 评论 -
C++语法 复习 (全国高校计算机能力挑战赛)
明天就考试了,赶紧复习一下,选择题好像会涉及到语法和面向对象的一些概念。下面是一些平时刷题不怎么用到,但是比较重要的概念一个派生类继承了所有的基类方法,但下列情况除外:基类的构造函数、析构函数和拷贝构造函数。基类的重载运算符。基类的友元函数。继承类型当一个类派生自基类,该基类可以被继承为 public、protected 或 private 几种类型。继承类型是通过上面讲解的访问修饰符 access-specifier 来指定的。我们几乎不使用 protected 或 private原创 2021-12-11 13:40:57 · 1233 阅读 · 1 评论 -
1037: 合并有序数组 双指针
1037: 合并有序数组时间限制: 1 Sec 内存限制: 128 MB题目描述给你两个有序且升序的数组,请你把它们合成一个升序数组并输出输入第一行为N,N<=20 ;第二行为N个数字,这N个数字用一个空格隔开第三行为M,M<=20 ;第四行为M个数字,这M个数字用一个空格隔开所有数均可用int型表示输出输出合并后的数组,每行输出一个,最后输出一个回车样例输入31 3 752 4 6 8 10样例输出123467810#include <原创 2021-12-07 11:41:09 · 602 阅读 · 0 评论 -
约瑟夫问题 数组模拟
1033: 约瑟夫问题时间限制: 1 Sec 内存限制: 128 MB题目描述设有N名同学手拉手围成一圈,自1、2、3、…开始编号,现从1号开始连续数数,每数到M将此同学从圈中拉走, 求最后被拉走的同学的编号输入两个正整数,分别为N和M。0<N<=100 ;0<M<65535输出一个正整数,为最后被拉走的同学的编号,最后输出回车样例输入100 10样例输出26数组模拟#include <iostream>#include <algor原创 2021-12-05 23:42:01 · 534 阅读 · 0 评论 -
c++常用函数对应的头文件
持续更新:遇到的时候就记录一下abs() #include <cmath>fabs()#include <cmath> floor() ceil() 上下取整#include <cmath>max() min()#include <stdio.h>原创 2021-12-05 14:09:42 · 1828 阅读 · 5 评论 -
C/C++语法、库的使用
文件操作#include <fstream>#include <iostream>using namespace std;int main(){ ifstream fin("in.txt"); char c; fin>>c; cout<<c; fin.close(); return 0;} #include <iostream>#include <stdio.h>using namespace s原创 2021-10-06 23:48:22 · 122 阅读 · 0 评论