
基本操作
king9666
这个作者很懒,什么都没留下…
展开
-
字符串的逆序实现
字符串的逆序#include <string.h>#include <stdio.h>int main(){ char str[1005]; int i, cnt = 0; char c; gets(str); for(i = 0; (c = str[i]) != '\0'; i++) cnt++; ...原创 2020-04-10 22:02:18 · 297 阅读 · 0 评论 -
网易2020 数字圆环(小易的首尾相接)
数字圆环题目描述:小易有一个长度为n的数字数组a1,a2,….an问你是否能用这n个数字构成一个环(首尾相连),使得环中的每一数字都小于它相邻的两个数字的和(每个数字都必须使用并且每个数字只能使用一次)输入描述第一行包含一个整数t (1<=t<=10),表示测试用例的组数每个测试用例的输入如下:第一行一个整数n,表示数字的个数;第二行n个整数a1,a2,an,每两个整数...原创 2020-04-09 22:12:42 · 1797 阅读 · 0 评论 -
异或的妙用
异或的妙用第一种在很多个数中删除一个数,要求删除这个数的位置。1. 将删出前的每个数异或得到a.2. 删掉后的所有数异或得到b.3. a^b即为删掉的数。4. 原理a=a^x^x.第二种交换两个变量的位置A-B且不占用其他空间A:1010 B:1100A=A^B (A:0110,B:1100)B=A^B(A:0110,B:1010(原A))A=A^B(A:1100(原B)...原创 2020-04-08 17:55:06 · 169 阅读 · 0 评论 -
操作系统笔记
进程和线程进程和线程有什么区别?进程(Process)是系统进行资源分配和调度的基本单位,线程(Thread)是CPU调度和分派的基本单位;线程依赖于进程而存在,一个进程至少有一个线程;进程有自己的独立地址空间,线程共享所属进程的地址空间;进程是拥有系统资源的一个独立单位,而线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),和其他线程共享本进...原创 2020-04-04 15:39:48 · 224 阅读 · 0 评论 -
JVM 垃圾自动回收机制
JVM 垃圾自动回收机制虚拟机栈:描述的是方法执行时的内存模型,是线程私有的,生命周期与线程相同,每个方法被执行的同时会创建栈桢(下文会看到),主要保存执行方法时的局部变量表、操作数栈、动态连接和方法返回地址等信息,方法执行时入栈,方法执行完出栈,出栈就相当于清空了数据,入栈出栈的时机很明确,所以这块区域不需要进行垃圾回收本地方法栈:与虚拟机栈功能非常类似,主要区别在于虚拟机栈为虚拟机执行...原创 2020-04-04 15:37:04 · 426 阅读 · 0 评论 -
牛客网小白月赛21 A.Audio(三角形外心公式)
#include <iostream>#include <stdio.h>typedef long long ll;struct node{ ll x; ll y;}a,b,c; int main(){ scanf("%lld %lld",&a.x,&a.y); scanf("%lld %lld",&...原创 2020-02-15 22:21:46 · 149 阅读 · 0 评论 -
Majority ICPC_Pacific Northwest Region Programming Contest基础题
Problem N— limit 5 secondsThe votes are in! Mathematicians world-wide have been polled, and each has chosen their favorite number between 1 and 1000. Your goal is to tally the votes and determine wh...原创 2020-02-04 11:31:10 · 248 阅读 · 0 评论 -
a[i]++ 和 a[i++]的区别
a[i]++指的是把a[i]看成一个整体变量x, x++,一般用数组方便存储,有特殊的作用.a[i++]是指向下一个元素的元素.原创 2020-02-04 11:28:27 · 3283 阅读 · 0 评论 -
F - LJJ王国的数学家(dfs简单递归入门)
F - LJJ王国的数学家Description想要成为LJJ王国的数学家,你要秒切这样一个问题:给定n和k,输出k个非负整数加和等于n的所有方案。(按字典序)Input两个整数分别为n和k。(0<k<=n<=10)Output按字典序输出所有方案。SampleInput3 3Output3=0+0+33=0+1+23=0+2+13=0+3+03=1...原创 2020-02-02 20:32:12 · 177 阅读 · 0 评论 -
王国的婚礼(被水题坑了一波)
王国的婚礼Description在LJJ王国里,婚姻法规定,结婚后不许离婚,但可以选择婚姻年限 1 到 100 年,过期不续费就相当于自动离婚,但是时间越短费用越高,1 年的登记费超过 1 万亿元,100 年只需要6元。结婚一年,说明你不懂婚姻,于是有一本很厚的婚姻书要看,而选择100年只有一张纸,上面写着一句:祝你们白头偕老!假设选择的婚限年限为 a 年,需要交的登记费为如下公式。In...原创 2020-02-02 20:20:10 · 407 阅读 · 0 评论 -
Happy Birthday (Codeforces思维➕枚举)
Happy Birthday#include <bits/stdc++.h>using namespace std;const int N = 1e6+5;int a[11];int main(){ int n; cin>>n; for(int i = 0 ; i < n ; i ++) { for (i...原创 2020-02-01 21:33:05 · 320 阅读 · 0 评论 -
A. Berstagram icpc(用数组模拟)
A. Berstagramtime limit per test3 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputPolycarp recently signed up to a new social network Berstagram. He immediate...原创 2020-02-01 21:05:16 · 339 阅读 · 0 评论 -
1002 写出这个数(水题)
读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10的100 次方输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789输出样例:yi san wu...原创 2020-01-17 11:22:21 · 137 阅读 · 0 评论 -
1005 继续(3n+1)猜想 PTA
1005 继续(3n+1)猜想 (25分)卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这 4 个数...原创 2020-01-17 10:44:19 · 187 阅读 · 0 评论 -
浅谈威尔逊定理
威尔逊定理定义在初等数论中,威尔逊定理给出了判定一个自然数是否为素数的充分必要条件。即:当且仅当p为素数时:( p -1 )! ≡ -1 ( mod p ),但是由于阶乘是呈爆炸增长的,其结论对于实际操作意义不大,但借助计算机的运算能力有广泛的应用,也可以辅助数学推导。证明威尔逊定理充分性如果“p”不是素数,当p=4时,显然(p-1)!≡6≡2(mod p), 当p>4时,若p不是完...原创 2020-01-16 20:17:40 · 929 阅读 · 0 评论 -
乘法逆元的三种思想(后补)
????????????????????费马小定理欧拉定理阶乘逆元ll j[maxn];ll in[maxn];void pre_solve(int n,ll p){ jc[0]=1; for(int i=1;i<=n;i++) j[i]=(j[i-1]*i)%p; in[n]=qpow(j[n],p-2,p); // 快速幂 for(int i=n-1;i...原创 2020-01-15 23:08:55 · 111 阅读 · 0 评论 -
防爆大整数的快速幂
ll qmul(ll a,ll b,ll p){ ll ans=0,base=a%p; while(b) { if(b&1) ans=(ans+base)%p; base=(base+base)%p; b>>=1; } return ans;}原创 2020-01-15 23:05:09 · 161 阅读 · 0 评论 -
Lucas定理和扩展
Lucas定理是用来求 c(n,m) mod p,p为素数的值。它是用来求组合数 C(n, m) % p 值的定理,这里的p是素数。所以,它是一个解决大组合数求模的算法。卢卡斯定理适用于模数 ???? 为质数的情况首先我们知道组合数的计算公式????????????=????!/????!(????−????)!所以我们可以先递推出阶乘再用快速幂或 ???????????????????? 计算逆元也可以直接递推阶乘逆元然后就可以计算 ????了ll qpow(l...原创 2020-01-15 23:03:35 · 228 阅读 · 0 评论 -
梅森素数与费马素数
梅森素数梅森素数是由梅森数而来。所谓梅森数,是指形如2p-1的一类数,其中指数p是素数,常记为Mp 。如果梅森数是素数,就称为梅森素数。用因式分解法可以证明,若2n-1是素数,则指数n也是素数;反之,当n是素数时,2n-1(即Mp)却未必是素数。前几个较小的梅森数大都是素数,然而梅森数越大,梅森素数也就越难出现。素数是指在大于1的整数中只能被1和其自身整除的数。素数有无穷多个,但到2018...原创 2020-01-15 22:43:57 · 1565 阅读 · 0 评论 -
浅谈泛型编程
泛型编程泛型编程是一种编程风格,其中算法以尽可能抽象的方式编写,而不依赖于将在其上执行这些算法的数据形式。泛型这个词并不是通用的,在不同的语言实现中,具有不同的命名。在Java/Kotlin/C#中称为泛型(Generics),在ML/Scala/Haskell中称为Parametric Polymorphism,而在C++中被叫做模板(Template),比如最负盛名的C++中的STL。任何...原创 2020-01-14 18:02:20 · 379 阅读 · 0 评论 -
Gnomon数的数学抽象
三角形数1 3 6 10 15 21n * ( n + 1 ) / 2长方形数2 6 12 20 30 42(n+1)* nGnomon数1 3 5 7 92n - 1正方形数前N个Gnomon数的求和公式就是正方形数n的平方原创 2020-01-14 17:35:20 · 356 阅读 · 0 评论 -
A - Max Sum Plus Plus(简单DP)
A - Max Sum Plus PlusNow I think you have got an AC in Ignatius.L’s “Max Sum” problem. To be a brave ACMer, we always challenge ourselves to more difficult problems. Now you are faced with a more dif...原创 2020-01-13 15:07:02 · 262 阅读 · 0 评论 -
cin.tie() 输入加速器
sync_with_stdio这个函数是一个“是否兼容stdio”的开关,C++为了兼容C,保证程序在使用了std::printf和std::cout的时候不发生混乱,将输出流绑到了一起。cin.tie()cin.tie(NULL);只解除的是C++运行库层面的对数据传输的绑定。STDIN和STDOUT应该在更底层的操作系统层面有绑定,没有解除加速器#include int main...原创 2020-01-12 20:15:51 · 9085 阅读 · 0 评论 -
智能系统概论
智能定义:何为智能,智能是指学习和理解问题,解决问题,制定决策的能力。弱方法定义:从自动与受控维度区分的一种程序性知识,是适用于一般领域的、受意识控制的程序性知识。专家系统 模糊逻辑 神经计算将这三者集成,提高了基于知识的系统的自适应性,容错能力和运行速算。专家系统的局限性只能大体上模仿专家的思考方法, 缺少人类专家知识面的广度和对基本原理的理解, 并不能解决一切现实问题, 特别是常...原创 2020-01-11 14:07:07 · 1112 阅读 · 0 评论 -
L Sticky Situation
L Sticky SituationWhile on summer camp, you are playing a game of hide-and-seek in the forest. You need to designate a “safe zone”, where, if the players manage to sneak there without being detected,...原创 2020-01-10 20:29:33 · 287 阅读 · 0 评论 -
C Brexit(VJ)
C BrexitA long time ago in a galaxy far, far away, there was a large interstellar trading union, consisting of many countries from all across the galaxy. Recently, one of the countries decided to lea...原创 2020-01-10 20:22:55 · 307 阅读 · 0 评论 -
B Battle Simulation(icpc水题)
B Battle SimulationA terrible monster is rampaging throughNeo Tokyo 5! The Earth Defense Force(EDF) has sent a mech unit1 to defeat themonster. Because there is only a singlemech unit available a...原创 2020-01-10 20:09:48 · 269 阅读 · 0 评论 -
C语言头文件conio.h的作用
预处理命令,表示程序包含conio.h库文件conio.h库文件定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作比如常用的getch()函数就是在这个头文件里定义的...原创 2019-11-11 11:26:46 · 13264 阅读 · 0 评论 -
矩阵求导、几种重要的矩阵及常用的矩阵求导公式
https://blog.youkuaiyun.com/daaikuaichuan/article/details/80620518转载 2019-11-11 10:51:43 · 310 阅读 · 0 评论 -
B. Grow The Tree(简单思维题)Codeforces Round #594 (Div. 2)
B. Grow The Treetime limit per test2 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputGardener Alexey teaches competitive programming to high school students. To c...原创 2019-10-24 17:01:42 · 687 阅读 · 0 评论 -
A. Integer Points codeforces #594(Div.2)
http://codeforces.com/contest/1248/problem/A注意开大数#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ ios::sync_with_stdio(false); ll t; for(cin >>...原创 2019-10-24 16:51:31 · 170 阅读 · 1 评论 -
超越学姐爱字符串
超越学姐非常喜欢自己的名字,以至于英文字母她只喜欢“c”和“y”。因此超越学姐喜欢只含有“c”和“y”的字符串,且字符串中不能出现两个连续的“c”。请你求出有多少种长度为n的字符串是超越学姐喜欢的字符串。答案对1e9+7取模。输入描述:输入一个整数n。1<=n<=100000输出描述:输出一个整数表示答案。示例1输入复制3输出复制5说明cyy,cyc,yyy...原创 2019-10-14 18:09:48 · 290 阅读 · 0 评论 -
C语言如何加单引号双引号
如何加单引号双引号inputaoutput‘a’“a”#include&lt;stdio.h&gt;int main(){ char n; scanf("%c",&amp;n); printf("\'%c\'\n",n);//单引号 printf("\"%c\"\n原创 2019-02-07 12:12:21 · 5951 阅读 · 0 评论 -
C输出的左对齐和右对齐
输出的左对齐和右对齐默认右对齐#include <stdio.h>int main(){ printf("%10d\n", 1234); //右对齐。数字宽度为10,若不足10,在左边补足空格 printf("%-10d\n", 1234); //左对齐。数字宽度为10,若不足10,在右边补足空格 return 0;}...原创 2019-02-07 12:23:49 · 2804 阅读 · 1 评论 -
0\1背包问题
0/1 背包是什么?每个物品最多只能放一次。转移函数if (背包体积j小于物品i的体积) f[i][j] = f[i-1][j] //背包装不下第i个物体,目前只能靠前i-1个物体装包else f[i][j] = max(f[i-1][j], f[i-1][j-vi] + wi)//f[i-1][j]代表的就是不将这件物品放入背包,f[i-1][j-vi] + wi则是代表...原创 2019-02-15 21:17:07 · 173 阅读 · 0 评论 -
快速排序 SDUT
快速排序是什么动态图演示题目演示快速排序是冒泡排序的一种改进,其基本思想是通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。动态图演示题目演示Problem Description给定N(N≤10^5)个整数,要求用快速排序对数据进行升序...原创 2019-02-16 09:05:05 · 468 阅读 · 0 评论 -
如何输出吃掉空格
scanf 的操作如图如何输出空格使用getchar();或\t (tab三个空格)样例#include&lt;stdio.h&gt;int main(){getchar();printf("Yes");return 0;}输出结果 摁回车键Yes吃掉空格int n;scanf("%d%*c",&amp;n);原创 2019-02-16 09:17:54 · 2134 阅读 · 0 评论 -
二分查找
二分查找是什么二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。时间复杂度 O(log2n)入门级二分查找int BinSearch(int Array[],int low,int high,int key){if (low&lt;=high)int mid = (low+hi...原创 2019-02-16 09:41:24 · 183 阅读 · 0 评论 -
十大排序动态图
分类汇总属性稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b 的后面。时间复杂度:对排序数据的总的操作次数。反映当n变化时,操作次数呈现什么规律。空间复杂度:是指算法在计算机内执行时所需存储空间的度量,它也是数据规模n的函数。1.冒泡排序(Bubble Sort)2.选择排序(Selection...原创 2019-02-16 10:34:12 · 5377 阅读 · 6 评论 -
左(右)移运算符的用法
&gt;&gt; &lt;&lt; 的用法&lt;&lt;是左移位,&gt;&gt;是右移位,因为数据存储是二进制的所以左移1相当于乘以2的1次方,右移相当于乘以2的-1次方左移运算符 &lt;&lt;,num &lt;&lt; 1,相当于num乘以2,num &lt;&lt;原创 2019-02-16 14:06:31 · 560 阅读 · 0 评论