Peter_Matthew的博客

一些奇奇怪怪的计算机知识

2018-09-03

本文共1.7k字,大约需要阅读8分钟。

时间复杂度符号

  • Θ,读音:theta、西塔;既是上界也是下界(tight),等于的意思。
  • Ο,读音:big-oh、欧米可荣(大写);表示上界(tightness unknown),小于等于的意思。
  • ο,读音:small-oh、欧米可荣(小写);表示上界(not tight),小于的意思。
  • Ω,读音:big omega、欧米伽(大写);表示下界(tightness unknown),大于等于的意思。
  • ω,读音:small omega、欧米伽(小写);表示下界(not tight),大于的意思。

Ο是渐进上界,Ω是渐进下界。Θ需同时满足大Ο和Ω,故称为确界(必须同时符合上界和下界)。Ο极其有用,因为它表示了最差性能。

数字

  • 1226563rd prime is 19260803
  • 1226564th prime is 19260817
  • 1226565th prime is 19260823
  • 1240302nd prime is 19490963
  • 1240303rd prime is 19491001
  • 1240304th prime is 19491007
  • 19260802nd prime is 359003321
  • 19260803rd prime is 359003327
  • 19260804th prime is 359003401
  • 19260816th prime is 359003639
  • 19260817th prime is 359003647
  • 19260818th prime is 359003669
  • 19260822nd prime is 359003737
  • 19260823rd prime is 359003747
  • 19260824th prime is 359003753
  • 19490962nd prime is 363541751
  • 19490963rd prime is 363541781
  • 19490964th prime is 363541807
  • 19491000th prime is 363542381
  • 19491001st prime is 363542383
  • 19491002nd prime is 363542411
  • 19491006th prime is 363542461
  • 19491007th prime is 363542477
  • 19491008th prime is 363542503

编译错误?

1
2
fatal error: XXX: No such file or directory #include<XXX>
^ compilation terminated.

上述的编译错误是指编译器由于没有发现XXX这个库所以终止了编译,这时候需要检查编译终止的库文件名的拼写是否有问题。

1
2
error: 'XXX' was not declared in this scope XXX(***);
^

上述的编译错误是指编译器没有发现你定义的XXX这个函数,这时候需要检查你定义的函数名和使用时的是否一致。

1
2
error: expected ',' or ';' before 'XXX' XXX
^

上述的编译错误是指编译器在编译XXX和上一条语句是没有发现语句分隔符’,’和’;’,你需要检查上一条语句并添加分隔符。

1
2
error: 'XXX' was not declared in this scope ***
^

上述的编译错误是指编译器在编译***这条语句的时候没有发现其中的XXX代表什么含义,你需要检查这条语句是否写错或者XXX是否被正确地定义。

1
2
3
4
5
6
7
8
Can't compile file: AAA.cpp: In function 'BBB':
AAA.cpp:7:20: error: expected ':' before ';' token
CCC?DDD;:EEE;
^
AAA.cpp:7:20: error: expected primary-expression before ';' token
AAA.cpp:7:21: error: expected primary-expression before ':' token
CCC?DDD;:EEE;
^

这个错误是我这个大蒟蒻以前犯下的一个错误,这个错误是由于三目运算符的位置中不能有语句分隔符’,’和’;’。

1
2
error: expected primary-expression before 'XXX' scanf(***),XXX;
^

这个错误是因为scanf不能使用’,’分隔的关系。

1
2
error: lvalue required as increment operand i=++j++;
^

这个错误真的是我当时不知道为啥脑子抽掉写的,我也不知道别的运算符使用错误是否会这样提示,但是++只能用在前或后不能同时用。

1
2
error: expected unqualified-id before ',' token typename AAA,,BBB;
^

这个错误是因为定义类型的时候不能空一个。

1
error:conflicting declaration ‘typename AAA[***]’ typename AAA[***]; ^ note:previous declaration as ‘typename AAA’ typename AAA;

这个错误的实质是AAA重复定义,然后会产生很多错误信息。

1
2
3
Can't compile file: AAA.cpp:3:1: error: 'XXX' does not name a type
XXX BBB;
^

这是由于类型定义错误产生的错误。

1
2
3
error:name lookup of 'i' changed for ISO 'for' scoping [-fpermissive] i ^
note:if you use ‘-fpermissive’ G++ will accept your code
warning:right operand of comma operator has no effect [-Wunused-value] i ^

这是由于之前定义的局部变量被重新使用导致的,其本质是未定义。

注:由于洛谷第4代评测机已经推出了中文编译信息,因此上帖可能暂时停止更新

缩写

1
2
3
4
5
cpp:c plus plus C++
io(或I/O):Input/Output 输入输出
std:standard 标准
int:integer 整型(在C++中也可定义为long,其实质为long int
shrt:short 短整型

数字

1
2
3
4
2147483648231次方,其负数是int类型的数据最小值
2147483647231次方减1,是int类型的数据最大值
536870911:int数组下标乘积之和最大值
33554432128MB空间最大可开的int数

函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
int isspace(a)//用于判断字符a是否为分隔符,这包括' '(32)、'\t'(9)、'\n'(10)、'\v'(11)、'\f'(12)和'\r'(13)
int isprint(a)//用于判断字符a是否为可打印字符,这包括所有具有占位功能的字符
int iscntrl(a)//用于判断字符a是否为控制字符,这除去了上文所述的可打印字符
int isupper(a)//用于判断字符a是否为大写字母
int islower(a)//用于判断字符a是否为小写字母
int isalpha(a)//用于判断字符a是否为字母
int isdigit(a)//用于判断字符a是否为数字
int ispunct(a)//用于判断字符a是否为标点符号
int isxdigit(a)//用于判断字符a是否为十六进制数字,这包括'0'(48)-'9'(57)、'a'(97)-'f'(102)和'A'(65)-'F'(70)
int isalnum(a)//用于判断字符a是否为字母或数字
int isgragh(a)//用于判断字符a是否为图形表示的字符,这包括上文所说的可打印字符中除去分隔符的部分
/*C++11警告*/int blank(a)//用途同isspace
int toupper(a)//当字符a是小写字母时,改为大写,其余情况不变
int tolower(a)//当字符a是大写字母时,改为小写,其余情况不变

这一波优化我看着都怕

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize("Ofast")
#pragma GCC optimize("inline")
#pragma GCC optimize("-fgcse")
#pragma GCC optimize("-fgcse-lm")
#pragma GCC optimize("-fipa-sra")
#pragma GCC optimize("-ftree-pre")
#pragma GCC optimize("-ftree-vrp")
#pragma GCC optimize("-fpeephole2")
#pragma GCC optimize("-ffast-math")
#pragma GCC optimize("-fsched-spec")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-falign-jumps")
#pragma GCC optimize("-falign-loops")
#pragma GCC optimize("-falign-labels")
#pragma GCC optimize("-fdevirtualize")
#pragma GCC optimize("-fcaller-saves")
#pragma GCC optimize("-fcrossjumping")
#pragma GCC optimize("-fthread-jumps")
#pragma GCC optimize("-funroll-loops")
#pragma GCC optimize("-fwhole-program")
#pragma GCC optimize("-freorder-blocks")
#pragma GCC optimize("-fschedule-insns")
#pragma GCC optimize("inline-functions")
#pragma GCC optimize("-ftree-tail-merge")
#pragma GCC optimize("-fschedule-insns2")
#pragma GCC optimize("-fstrict-aliasing")
#pragma GCC optimize("-fstrict-overflow")
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-skip-blocks")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("-funsafe-loop-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")

知识共享许可协议

知识共享许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

使用支付宝打赏
使用微信打赏

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏