自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Celery源码阅读 result

一、ResultBaseResult基类,parent用于某个任务是一条任务链中的子任务时标记父任务。class ResultBase: """Base class for results.""" #: Parent result (if part of a chain) parent = None二、AsyncResult继承自ResultBase的Result类,task默认使用AsyncResult作为结果类。1. 属性def __init__(

2022-04-12 16:55:36 440

原创 Python 实现单例模式的几种方式以及存在的问题

一、使用__new__方法:1. 代码实现import threadingimport timeclass SingleClass: _instance = None def __new__(cls, *args, **kwargs): if cls._instance is None: cls._instance = object.__new__(cls, *args, **kwargs) return cl

2022-04-07 11:11:35 1014

原创 celery实现任务暂停与恢复

## 复现(先挖坑)## 参考链接:python - How to pause or resume celery task? - Stack Overflow

2022-04-06 11:23:44 976 1

原创 牛客多校第一场 A-Equivalent Prefixes

/************************************************************************* > File Name: A.cpp > Author: qingyu > Created Time: 2019年10月22日 星期二 10时50分51秒 *********************************...

2019-10-22 12:46:14 129

原创 联想r720 双硬盘双系统ubuntu18.04 + win10双引导问题

目录0.前言1.硬盘检测问题1).设置开机F8进入安全模式2).设置SATA工作模式为ACHI并进入网络安全模式2.格式化磁盘,为linux分区。3.参考博客0.前言个人电脑配置:联想r720 SSD(128G)+HDD(1.0T)因为受到鸟叔的影响觉得学习linux用真机比较好一点,但是又买不起两台电脑,所以最后选择了win10+ubuntu18.04(还是...

2019-10-08 15:32:05 783

原创 c++11 thread多线程 thread()、join()、detach()

目录0.linux下thread编译命令1.thread构造函数1).以函数为参数2).以可调对象为参数3).以lambda表达式为参数2.join()函数3.detach()函数4.joinable()函数0.linux下thread编译命令g++ 源文件名.cpp -std=c++11-lpthread或g++ 源文件名.cpp -std=c++...

2019-10-07 14:18:52 1920

原创 51nod1616 最小集合(gcd 思维)

题目A君有一个集合。这个集合有个神奇的性质。若X,Y属于该集合,那么X与Y的最大公因数也属于该集合。但是他忘了这个集合中原先有哪些数字。不过幸运的是,他记起了其中n个数字。当然,或许会因为过度紧张,他记起来的数字可能会重复。他想还原原先的集合。他知道这是不可能的……现在他想知道的是,原先这个集合中至少存在多少数。样例解释:该集合中一定存在的是{1,...

2019-10-04 15:22:07 154

原创 51nod1119 机器人走方格v2(逆元+组合数)

题目M * N的方格,一个机器人从左上走到右下,只能向右或向下走。有多少种不同的走法?由于方法数量可能很大,只需要输出Mod 10^9 + 7的结果。收起输入第1行,2个数M,N,中间用空格隔开。(2 <= m,n <= 1000000)输出输出走法的数量 Mod 10^9 + 7。输入样例2 3输出样例3解题思路:从左上角走到右下...

2019-10-02 22:39:22 147

原创 51nod1227 平均最小公倍数(杜教筛)

题目Lcm(a,b)表示a和b的最小公倍数,A(n)表示Lcm(n,i)的平均数(1 <= i <= n),例如:A(4) = (Lcm(1,4) + Lcm(2,4) + Lcm(3,4) + Lcm(4,4)) / 4 = (4 + 4 + 12 + 4) / 4 = 6。F(a, b) = A(a) + A(a + 1) + ...... A(b)。(F(a,b) =...

2019-10-02 17:11:21 254

原创 51nod1678 lyk与gcd(莫比乌斯函数 打表)

题目这天,lyk又和gcd杠上了。它拥有一个n个数的数列,它想实现两种操作。1:将 aiai改为b。2:给定一个数i,求所有gcd(i,j)=1gcd(i,j)=1时的 ajaj的总和。收起输入第一行两个数n,Q(1<=n,Q<=100000)。接下来一行n个数表示ai(1<=ai<=10^4)。接下来Q行,每行先读入一个数A(1...

2019-10-02 12:33:49 214

原创 51nod1188 最大公约数之和V2(筛法 + 欧拉函数)

题目给出一个数N,输出小于等于N的所有数,两两之间的最大公约数之和。相当于计算这段程序(程序中的gcd(i,j)表示i与j的最大公约数):G=0;for(i=1;i<N;i++)for(j=i+1;j<=N;j++){ G+=gcd(i,j);}收起输入第1行:1个数T,表示后面用作输入测试的数的数量。(1 &...

2019-10-01 00:27:07 164

原创 51nod1434 区间LCM(思维,LCM唯一分解)

题目一个整数序列S的LCM(最小公倍数)是指最小的正整数X使得它是序列S中所有元素的倍数,那么LCM(S)=X。例如,LCM(2)=2,LCM(4,6)=12,LCM(1,2,3,4,5)=60。现在给定一个整数N(1<=N<=1000000),需要找到一个整数M,满足M>N,同时LCM(1,2,3,4,...,N-1,N) 整除 LCM(N+1,N+2,....,M...

2019-09-30 13:23:40 361

原创 51nod 1225 余数之和(数论分块)

题目F(n) = (n % 1) + (n % 2) + (n % 3) + ...... (n % n)。其中%表示Mod,也就是余数。例如F(6) = 6 % 1 + 6 % 2 + 6 % 3 + 6 % 4 + 6 % 5 + 6 % 6 = 0 + 0 + 0 + 2 + 1 + 0 = 3。给出n,计算F(n), 由于结果很大,输出Mod 1000000007的结果即可。...

2019-09-30 12:36:09 184

原创 51nod1186 质数检测v2(java大整数素性测试)

题目给出1个正整数N,检测N是否为质数。如果是,输出"Yes",否则输出"No"。收起输入输入一个数N(2 <= N <= 10^30)输出如果N为质数,输出"Yes",否则输出"No"。输入样例17输出样例Yes解题思路:java大整数方法、、、、代码:import java.util.*;import java.ma...

2019-09-30 11:04:52 212

原创 51nod 1247 可能的路径(辗转相减)

题目在一个无限大的二维网格上,你站在(a,b)点上,下一步你可以移动到(a + b, b), (a, a + b), (a - b, b), 或者 (a, a - b)这4个点。给出起点坐标(a,b),以及终点坐标(x,y),问你能否从起点移动到终点。如果可以,输出"Yes",否则输出"No"。例如:(1,1) 到 (2,3),(1,1) -> (2,1) -> (2,3)...

2019-09-30 10:46:42 188

原创 51nod1060 最复杂的数(反素数)

题目把一个数的约数个数定义为该数的复杂程度,给出一个n,求1-n中复杂程度最高的那个数。例如:12的约数为:1 2 3 4 6 12,共6个数,所以12的复杂程度是6。如果有多个数复杂度相等,输出最小的。收起输入第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 100)第2 - T + 1行:T个数,表示需要计算的n。(1 <= n...

2019-09-29 09:45:24 171

原创 51nod1035 最长的循环节

题目正整数k的倒数1/k,写为10进制的小数如果为无限循环小数,则存在一个循环节,求<=n的数中,倒数循环节长度最长的那个数,假如存在多个最优的答案,输出所有答案中最大的那个数。1/6= 0.1(6) 循环节长度为11/7= 0.(142857) 循环节长度为61/9= 0.(1) 循环节长度为1收起输入输入n(10 <= n <= 100...

2019-09-29 09:04:56 258

原创 2019CCPC秦皇岛现场赛题解

D:#include<bits/stdc++.h>using namespace std;const int times = 1e4;bool is[110];bool check(int x){ int res = 1,cnt = 0; while(res % x){ if(res < x) res *= 10; else res %= x; c...

2019-09-29 08:12:23 1338

原创 51nod1239(杜教筛)

题目对正整数n,欧拉函数是小于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。例如:φ(8) = 4(Phi(8) = 4),因为1,3,5,7均和8互质。S(n) = Phi(1) + Phi(2) + ...... Phi(n),给出n,求S(n),例如:n = 5,S(n) = 1 + 1 ...

2019-09-28 17:05:58 178

原创 51nod1040 最大公约数之和(欧拉函数)

题目给出一个n,求1-n这n个数,同n的最大公约数的和。比如:n = 61,2,3,4,5,6 同6的最大公约数分别为1,2,3,2,1,6,加在一起 = 15收起输入1个数N(N <= 10^9)输出公约数之和输入样例6输出样例15解题思路: ...

2019-09-28 00:19:50 155

原创 51nod1179(思维)

题目给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5。收起输入第1行:一个数N,表示输入正整数的数量。(2 <= N <= 50000)第2 - N + 1行:每行1个数,对应输入的正整数.(1 <= S[i] <= 1000000)输出...

2019-09-27 23:33:04 128

原创 51nod1244 莫比乌斯函数之和(杜教筛模板题)

题目莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出。梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号。具体定义如下:如果一个数包含平方因子,那么miu(n) = 0。例如:miu(4), miu(12), miu(18) = 0。如果一个数不包含平方因子,并且有k个不同的质因子,那么miu(n) = (-1)^k。例如:miu(2), miu(3), m...

2019-09-27 22:54:09 159

原创 原根学习笔记

整数的阶定义1:如果n为正整数,且a为与n互素的整数。则根据,必然存在一个最小整数x,使得,则该最小整数x称为a模n的阶,记为。如。定理1:若a与n互素,则正整数x是的解的必要条件为,。推论1:由于a与n互素,因此是的一个解,因此。原根定义2:如果r和n是互素的整数且n>0,那么当时称r为n的原根。猜想1:只有当n为2、4、、(p为奇素数)时,n才有原根。以上就...

2019-09-27 16:02:40 341

原创 ccf201609-1 最大波动

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int a[maxn];int main(){ int n,ans = 0; scanf("%d",&n); for(int i = 0;i < n;++i) scanf("%d",&a[i]); fo...

2019-09-13 18:37:08 99

原创 ccf201604-1 折点计数

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int a[maxn];int main(){ int n,ans = 0; scanf("%d",&n); for(int i = 0;i < n;++i) scanf("%d",&a[i]); fo...

2019-09-13 18:36:39 218

原创 ccf201512-1 数位之和

#include<bits/stdc++.h>using namespace std;int main(){ ios::sync_with_stdio(false); cin.tie(NULL);cout.tie(NULL); string str; int ans = 0; cin>>str; for(int i = 0;i < str.si...

2019-09-13 18:36:03 86

原创 ccf201509-1 数列分段

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int x[maxn];int main(){ int n,ans = 1; scanf("%d",&n); for(int i = 0;i < n;++i) scanf("%d",&x[i]); for...

2019-09-13 18:35:19 130

原创 ccf201503-1 图像旋转

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int arr[maxn][maxn];int main(){ int n,m; scanf("%d%d",&n,&m); for(int i = 0;i < n;++i) for(int j = 0;...

2019-09-13 18:34:40 90

原创 ccf201412-1 门禁系统

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int ans[maxn],cnt[maxn];int main(){ int n; scanf("%d",&n); for(int i = 1;i <= n;++i){ i...

2019-09-13 18:32:17 132

原创 ccf201409-1 相邻数对

#include<bits/stdc++.h>using namespace std;const int maxn = 1e4 + 10;int s[maxn];int main(){ int n,ans = 0; scanf("%d",&n); while(n--){ int x; s...

2019-09-13 18:29:59 59

原创 ccf 201403-1 相反数

#include<bits/stdc++.h>using namespace std;const int maxn = 1e3 + 10;int mark[maxn];int main(){ int N,ans = 0; scanf("%d",&N); while(N--){ int x; sca...

2019-09-13 18:28:40 76

原创 ccf201312-1 出现次数最多的数

#include<bits/stdc++.h>using namespace std;const int maxn = 1e4 + 10;int s[maxn];int main(){ int n; scanf("%d",&n); for(int i = 0;i < n;++i){ int x; ...

2019-09-13 18:27:58 104

原创 poj3264 Balanced Lineup(线段树水题)

题目大意:给定n个值,执行q次查询,输出区间最大值和区间最小值的差。解题思路:维护两颗线段树,一颗维护区间最大值,一颗维护区间最小值即可。做的时候忘了开4倍数组re了一次,cin、cout超时又tle了一次,可以说很蠢了emmmmmmm#include<iostream>#include<algorithm>#include<cstdio>u...

2019-04-25 14:54:39 134

原创 zoj1610 count the colors(线段树)

题目大意:n次操作,每次对一段区间进行染色。问最后有每种颜色有多少段。解题思路:对区间颜色进行维护。注意,区间应该是从1到8000的(每次输入的区间是左开右闭区间,是个坑),颜色为0到8000。n次更新后,查询每个点对应的颜色,若跟前一个点颜色不同,则进行计数,最后输出即可。#include<iostream>#include<cstring>using na...

2019-04-24 17:48:14 77

原创 hdu1698 Just a hook(线段树)

对于给定区间利用线段树进行维护,在Q次修改之后,进行n次查询,将每一位的值加起来即为结果。没有什么坑点。#include<iostream>using namespace std;const int maxn = 1e5+5;int segment[4*maxn];int n;void pushdown(int i){ if(segment[i]) ...

2019-04-24 17:00:05 71

原创 poj2528 Mayor's posters (离散化+线段树,区间修改,单点查询)

对整个区间进行标记,查询时进行单点查询,最后统计出现了多少种。#include<iostream>#include<cstring>#include<set>#include<algorithm>using namespace std;const int maxn = 1e5+5;typedef long long ll;int ...

2019-04-24 11:41:27 172

原创 poj3468 A Simple Problem with Integers(区间线段树)

线段树区间查询模板题#include<iostream>#include<cstring>using namespace std;const int maxn = 2e5;typedef long long ll;ll add[4*maxn],b[4*maxn];void pushUp(int i){ b[i] = b[i*2] + b[i*2...

2019-04-24 11:28:46 95

原创 hdu1754 I Hate It(单点查询线段树,区间最大值)

模板题#include<iostream>#include<algorithm>using namespace std;const int maxn = 3e5;typedef long long ll;ll Max[4 * maxn];void pushUp(int i){ Max[i] = max(Max[i * 2],Max[i * 2 ...

2019-04-24 11:26:14 83

原创 hdu1166 排兵布阵(单点查询线段树模板题)

#include<iostream>using namespace std;const int maxn = 1e5;int a[maxn],b[4*maxn];void pushUp(int i){ b[i] = b[i * 2] + b[i * 2 + 1];}void build(int i,int l,int r){ if(l == r) ...

2019-04-24 11:19:02 119

空空如也

空空如也

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

TA关注的人

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