- 博客(24)
- 收藏
- 关注
原创 CF-133A - HQ9+
https://codeforces.com/problemset/problem/133/A检索字符串,如果找到了,那么就终止程序,而且不要no如果最后也没有找到,就no还有一种常用方法:就是如果有了,那么就flag标记下来最后用它做统一print依据积累:“+” increments the value stored in the internal accumulator.反正...
2019-05-24 16:04:01
249
原创 统计学习方法 李航 机器学习 人工智能 深度学习
链接:https://pan.baidu.com/s/1axTiDqA3cBAY9-XDymUfyQ提取码:sczz
2019-04-15 19:44:06
355
原创 1004 成绩排名
#include<iostream>#include<algorithm>using namespace std;struct student { char name[15]; char id[15]; int grade; } s[100]; bool cmp(student x,student y);int main(){ int n...
2019-03-08 20:26:10
246
1
原创 PAT 1002 写出这个数
#include&lt;iostream&gt;#include&lt;cstring&gt;//#include&lt;string.h&gt;#include&lt;algorithm&gt;using namespace std;int main(){ char a[99999]; //数组开得太大会直接结束,这个已经代表9999位数
2019-03-08 19:31:44
131
原创 dp自顶而下与自底而上的Fibonacci实现
其实dp思想就是,暂时给你存着,别重复计算相比冗杂不存储每次都重来的头铁递归,dp省时不少#include<iostream>using namespace std;int fib1(int n,int arr[]) //自顶向下——备忘录 有返回值{ if(n==0) { arr[n]=0; return 0;...
2019-02-27 14:58:46
238
原创 N皇后问题的普通递归与模拟
以后直接写功能函数,不要总是试图一步到位。对于每一个x,每一个y都给它试试,如果行,立马对下一个进行匹配。#include&lt;iostream&gt;#include&lt;stdio.h&gt;#include&lt;stdlib.h&gt;#include&lt;math.h&gt;using namespace std;int n, a
2019-02-26 20:35:13
143
原创 快速排序的几种写法与改进
近乎有序与大量重复情况的优化,避免形成o(n^2)#include&lt;iostream&gt;#include&lt;algorithm&gt;using namespace std;//快排最坏(比如近乎有序时(想原理图)会退化为n^2,故取随机值造成无序) template&lt;typename T&gt;void partition(T arr[],int l,i
2019-02-25 09:05:38
602
原创 归并排序原理,实现,优化
#include<iostream>#include<algorithm>using namespace std;template<typename T>void __mergeSort(T arr[],int l,int mid,int r){ T aux[r-l+1]; /*for(int i=0;i<=l-r+1;i++) aux[...
2019-02-24 15:29:51
221
原创 I - A hard puzzle HDU - 1097(快速幂)
别忘了随时取余,即使是long long也会超范围a^b快速幂原理:b用二进制来理解与运算,比如a^11=(1+2+0+8);即1011(从右向左的顺序)对于指数来说:121*(222),其实与a有一种对应关系,a*=a,每次运算就可以依次取到指数的1,2,4,8,但是比如对于11,我不想让它取到4这一次数,那么就是b&amp;amp;1!=0运用b*=b来实现指数的对应1,2,4,8模板如下...
2019-02-13 16:04:22
194
原创 排序的拓展
bool用于结构体排序的一个例子 以及三目运算符的简洁优越性 ,而且字典与成绩比较兼得bool operator&amp;lt;const Student&amp;amp; otherStudent&amp;gt;{return score !=otherStudent.score ? otherStudent.score : name &amp;lt;otherStudent.name;}#include&am
2019-02-12 23:46:10
258
原创 JAVA学习
public class Main { public static void main(String[] args) { int [] arr=new int [20]; for(int i=0;i<arr.length;i++) { arr[i]=i; System.out....
2019-02-12 20:02:43
115
原创 KMP挖坑
P串是不动的,S会移动,起始位置为0,i比j大几次,就移动几次,从而S就从0移动几次作为初始//KMP暴力做法int solve(char P[],int n,char S[],int m) //P为模式串,S为主串 { int count=0,count1=0,i,j; for(i=0;i+n&lt;=m;i++) //循环终止条件是“你可以挨着个查,但你不能超范围” {...
2019-02-12 16:43:02
191
原创 一次元リバーシ / 1D Reversi AtCoder - 2146
刚开始切入点:任意排列的一种情况,如果想让他反转,要放几次。那么具体化,(开始进入用逻辑,将代码实现清晰化的过程),就是“按照题目要求开始实现所有细节要求,比如从第一个到最后一个完全是同一个颜色”。只要是能想出来完整的操作流程,那么代码也可以自然而然地实现出来。#include<stdio.h>#include<string.h>int main(){int n...
2019-02-11 22:36:55
276
原创 すぬけ君の塗り絵 2 イージー / Snuke's Coloring 2 (ABC Edit) AtCoder - 2145
这个题就是典型的想出轮廓后,然后再具体分类,弄出各种情况其中发现了一个新的地方,之前是要记得每次循环更新数据,这次更新数据是要判断是否更新后,然后再更新(其实就可以用max与min函数)#include<stdio.h>int main(){ int i=0,xi,yi,a,N; int wl,wr,hu,hd,W,H; scanf("%d %d %d",&...
2019-02-11 22:29:28
1242
原创 An Ordinary Game AtCoder - 2153
形成一种习惯:把每一种列出的情况想清楚,因为有很多是答案上的规律题,不要总是用“找出一种解决方案”的思路,不要总是试图脑子构建出普遍规律。比如这个,从简单情况开始做,详细列出情况,发现规律。或者是用模拟,把情况想清楚。#include<stdio.h>#include<string.h>int main(){ int n,i; int count=...
2019-02-11 22:23:17
187
原创 地盘划分 ——朴素递归算法与优化版
小结:每次递归开始一个新的局面,之前的局面解决后,返回一个值,然后最开始的递归得到结果#include&lt;iostream&gt;using namespace std;int z(int a,int b){ int s; if(a==b) return 1; else if(a&gt;b) { a=a-b; s=z(a,b)+1; return s; }...
2019-01-31 17:04:02
596
原创 棋子移动(递归算法)
将所有问题化为一个问题的递归#include<iostream>using namespace std;void move(int k){ if(k==4) { cout<<4<<','<<5<<"-->"<<9<<','<<10&am
2019-01-31 15:02:47
2924
1
原创 vector简单应用(添加删除,清空,访问,二维动态数组)+基础功能
特点:当成数组使用1.pop_back()&amp;amp;push_back()#include&amp;lt;iostream&amp;gt;#include&amp;lt;vector&amp;gt;using namespace std;int main(){ vector&amp;lt;int&amp;gt;obj; for(int i=0;i&a
2019-01-30 21:00:14
1497
原创 素数的判断
//求素数# include <iostream>#include <math.h>using namespace std;int main(){ int i,j,a[10000+1]; for(i=2;i<10001;i++) a[i]=i; for(i=2;i<sqrt(10001);i++) //该处开始优化,区别...
2019-01-30 15:25:44
136
原创 处理超大数
#include<iostream>using namespace std;int main(){ int i,x,y,last=1; cin>>x>>y; for(i=1;i<=y;i++) last=last*x%1000; /*将last乘X后对1000取模,即求积的后三位*/ cout<...
2019-01-30 14:40:51
328
1
原创 迭代法求平方根
#include&lt;iostream&gt;#include&lt;math.h&gt;using namespace std;int main(){ float x2,x1; int a; cin&gt;&gt;x1&gt;&gt;a; x2=x1; do { x1=x2; x2=(x1+a/x1)/2;
2019-01-30 14:35:51
203
原创 阶乘0个数(分治算法实现)——暂未完成,二分细节不明
/*目的:找出谁的阶乘正好末尾零的个数为Q 给出末尾0的个数范围<10^8根据n!算0的个数公式1.能够算出来上限是5 0000 00002.能够算出来n!0的个数与Q的关系,而且两者呈正相关,与二分法可挂钩 */ #include<iostream>#include<cstdlib>using namespaceint solve(int n)...
2019-01-24 20:24:54
389
原创 折半查找法(递归二分算法)(非递归二分算法)
#include&amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;gt;`int main``
2019-01-23 10:40:03
206
转载 优快云-markdown编辑器
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...
2019-01-23 10:34:18
87
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人