自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 2020冬季PAT乙级

#include <iostream>#include<algorithm>#include <string>using namespace std;bool check(int x){ string num=to_string(x); for (int i = 1; i <= num.length(); i++) { int t=stoi(num.substr(0,i)); if(t%i) re.

2021-02-22 21:11:43 314

原创 双指针

使用双指针是降低算法复杂度的一个有效途径,有些问题的暴力解法时间复杂度是O(n^2),但使用双指针可以大幅度降低算法复杂度。同贪心算法一样,双指针的难点在于自己想不出、别人的理解不了、正确性难以证明。典型题:和为S输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。输入:nums = [2,7,11,15], target = 9输出:[2,7] 或者 [7,2]暴力法:穷举出每一种情况,如果两数之和等于targ.

2021-02-17 22:07:25 157

原创 nth_element()

C++的STL库中的nth_element()方法,默认是求区间第k小的。例子:求第3小,对于 a[9]={4,7,6,9,1,8,2,3,5};nth_element(a,a+2,a+9),求第3小的数,将其放到a[2]中(下标从0开始)nth_element(a,a+k-1,a+n),求第K小的数函数只是把第k小数放在了正确位置即a[k-1](第K个位置),对其它元素并没有排序,当然k左边元素都小于等于它,右边元素都大于等于它那求第k大时呢?我们可以转化成求第n-k+1小,此时下标应该是n

2021-02-09 13:09:16 138

原创 c++位运算函数之 __builtin_

1.__builtin_popcount(unsigned int n)该函数时判断n的二进制中有多少个1int n = 15; //二进制为1111cout<<__builtin_popcount(n)<<endl;//输出42.__builtin_parity(unsigned int n)该函数是判断n的二进制中1的个数的奇偶性int n = 15;//二进制为1111int m = 7;//111cout<<__builtin_parity(n)

2021-02-01 20:46:34 269

原创 sort()函数的使用

stable_sort()的使用stable_sort():当排序元素相等时,保留原来的顺序。在对结构体排序时,当结构体中的排序元素相等时,如果需要保留原序,可以使用stable_sort()partial_sort (局部排序)的使用partial_sort 是C++ STL算法组件中的其中一个算法,其作用是对序列局部元素进行排序,默认排序是升序。它有两个重载函数。要使用partial_sort 需要引用头文件#include < algorithm>std::partial_

2021-01-20 18:25:20 172

原创 priority_queue(优先队列)

头文件:#include <queue>声明格式:priority_queue <> 基本操作:常用操作:empty(判断是否为空)pop(出队)push(入队)size(求大小)pop(访问元素但不出队)排序:第一种用法(默认从大到小排序):priority_queue<int> q1;//默认从大到小排序,整数中元素大的优先级高 第二种用法(从小到大排序):priority_queue<int,vector<int>

2021-01-18 17:45:08 86

原创 拼题A跨年挑战赛 2020-21

输入样例: 500 600 400 800输出样例:2300#include <iostream>using namespace std;int main(){ int a,b,c,d; cin>>a>>b>>c>>d; cout<<a+b+c+d; return 0;}输入格式:输入在一行中给出一个选手射击的点到靶心的直线距离,以微米(10​−3​​ 毫米)为单位。输出格.

2021-01-17 17:59:48 1705

原创 python学习及重要内容

https://www.runoob.com/python3/python3-tutorial.html

2021-01-17 15:25:16 118

原创 2018年冬季PAT乙级

1091 N-自守数 (15分)1092 最好吃的月饼 (20分)1093 字符串A+B (20分)1094 谷歌的招聘 (20分)1095 解码PAT准考证 (25分)

2020-12-14 14:39:25 102

原创 2018年春季PAT乙级

1081 检查密码 (15分)1082 射击比赛 (20分)1083 是否存在相等的差 (20分)1084 外观数列 (20分)1085 PAT单位排行 (25分)

2020-12-14 13:44:13 97

原创 团体程序设计天梯赛-L2题解

团体程序设计天梯赛-L2题解L2-002 链表去重 (25分)#include <bits/stdc++.h>using namespace std;struct node{ int key; int next;} add[100005];int f[100005];int a1[100005], a2[100005];int main(){ int l, n; cin >> l >> n; for (int i

2020-12-11 19:22:38 705 1

原创 团体程序设计天梯赛-L1题解

团体程序设计天梯赛-L1题解L1-001 Hello World (5分)#include<iostream>using namespace std;int main(){ cout<<"Hello World!"<<endl; //直接输出 return 0;}L1-002 打印沙漏 (20分)#include<iostream>using namespace std;int main(){ int n;

2020-12-04 14:49:12 683 1

原创 关于各种输入的处理

首先,要明确一个概念:空白字符(white space) :一般,程序中所指的空白字符是指空格(space),回车(enter)和指标符(table)。1.cincin输入会将空格符(三种)视为分隔符,所以特别注意对含有空格的输入cin是不能够实现2.scnaf整数%d对于整型数据的输入,也就是说"%d"类型的输入,scanf默认的分割符是所有的空白字符(空格,回车和指标符都行)...

2020-04-19 12:58:42 226

原创 c++常用的库函数 stl

①find()函数1.通用std::find 函数std::find函数的确有很好的通用性,但是也有很大的缺点,就是算法的效率不高,算法的复杂度为O(n)。2.特定容器的find 函数当数据量是百万或者千万级的时候,std::find的O(n)算法就让程序感到销魂了。这时候我们可以考虑使用map或者set的算法。是的,这里的find,是map和set的一个成员函数,map和set中的fi...

2020-02-01 15:56:59 713

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除