BFS简单入门
最近才把之前放下的数据结构捡起来,就以宽搜来开头吧
摆烂两个月,我是小丑
广度优先搜索(Breadth First Search)
介绍就不细说了,详见
广度优先搜索(BFS)算法详解 (biancheng.net)
BFS——广度优先算法(Breadth First Search)_sooner高的博客-CSDN博客_bfs
总结一般来说,求从一个状态到另一个状态所需的最少变换次数,使用BFS
迷宫题目 一个入口,一个出口,有边界,有墙阻挡,求最短路径
这里就以6x6的地图大小了
用**#表示墙,0**为可走,黄色表示起点和终点
输入地图、起点坐标、终点坐标
Sample Input1234567##0#####0#0##0000##0#0###0000#####0#1 3 6 5
Sample Output17
参考代码123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 ...
关于字符串的定义、函数和输入
定义
字符串是一个或多个字符序列
字符串常量 (string constant)
用双引号括起来的内容称为字符串字面量 (string literal) , 也叫做字符串常量 (string constant) 如:
“I have an apple.” ( 在内存中存储时,编译器自动在末尾加入’\0’ )
字符串和字符数组
12345char a[6]="apple";char a[6]={'a','p','p','l','e','\0'};//声明字符串,两句意思相同char a[]="apple"//也可以省略初始化声明中的大小,编译器会自动计算数组的大小char a[5]={'a','p','p','l','e'}//这是字符数组,不是字符串!!!(没有'\0 ...
求最小公倍数和最大公约数
循环硬解输入a,b两个值,定义一个数i,将a或b赋值i,用i同时对两数取余,两数都能除尽时,i即为最小公倍数,若余数不为零则i++
同理,定义一个数j,将j赋值为1,利用j++,如果a和b能同时除尽j,则求出最大公约数
1234567891011121314151617181920212223242526#include<stdio.h>int main(){ int a,b,i,j; int max=0; scanf("%d%d",&a,&b); for(i=a;;i++)//求最小公倍数 { if(i%a==0&&i%b==0)//用大于等于a和b的数i(i大于等于a和b,无上限)分别除以a和b,同时除尽的第一个数即为最小公倍数 break;//然后循环结束 } for(j=1;j<=a;j++)//求最大公约数{ if(a%j==0&&b%j==0)//让a和b分别除以j(j从一开始,j有上限要小于等于a或b)//利用j++,如果a和b能同时除尽j ...
社团迎新题
初遇ACM社团题
题目简介
猜比分给定一组比分 如:*114514 : 191981*
让N个人来猜比分
第1个人编号为1
第2个人编号为2
……
第N个人编号为N
找出猜出比分最接近真实比分的编号
Input每行包含两个整数 以空格分开(范围都在[0~999999]内)第一行两个整数是CC PJ 的最终比分从第二行开始的若干行
分别是
第1位同学的竞猜结果
第2位同学的竞猜结果
……
第N位同学的竞猜结果
以-1 -1结束输入
Output一个整数 表示的是竞猜比分最接近真实结果的同学的编号
Sample Input1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556SHELL1328 1158500 70036 38423 450100 80380 80550 450735 735520 680390 1701800 80016 6161 1650 4866 60800 20043 29400 600900 80098 98 ...
使用hexo和github搭建个人博客
前言 如果你想拥有一个自己的简易精美小站而又不喜欢复杂的流程以及租赁昂贵VPS服务器(如在VPS上使用lnmp和wordpress搭建),那么使用Hexo+github搭建个人博客是最好的方案,并且能够真正实现零成本搭建,同时也没用申请域名证书的烦恼,当然如果你想也是可以的,之所以推荐Hexo是因为使用它来搭建的人比较多,如果出现问题能找到有效的解决方法。跟着下面的流程,小白也可以轻松搭建。
安装安装环境Hexo是一款基于Node.js的博客框架,因此,在开始搭建前,我们需要安装Node.js
同时,为了能使本地搭建的博客能够在github完成部署,我们还需要安装Git
安装node.js
https://nodejs.org/
进入官网选择LTS版本下载安装
检查安装是否成功(可选)以管理员身份启动终端,使用
1node -v
以及
1npm -v
若出现版本号则安装成功
!!若无权限请更改Windows PowerShell中的执行策略
1Set-ExecutionPolicy Unrestricted
安装Git
https://git-scm.com/ ...