没有合适的资源?快使用搜索试试~ 我知道了~
Knight Moves.txt
需积分: 12 0 下载量 48 浏览量
2020-06-20
11:23:43
上传
评论
收藏 975B TXT 举报
温馨提示
试读
2页
因子:因子也叫因数,例如3*5=15,那么3和5是15的因子。同时15*1=15,那么1和15也是15的因子。 1,3,5,15 这四个因子是15的所有因子。 完数:如果一个数等于不含它本身的其他因子之和,则称该数为‘完数’。如6的因子有1,2,3,6,且1+2+3= 6,因此6是完数。 题目描述: 输入一个正整数N(0<N<10000),输出小于N的所有完数及小于N的完数个数(个数前加“*”,例如:*2)。
资源推荐
资源详情
资源评论
#include<bits/stdc++.h>
using namespace std;
int a[90000],b[90000],g[400][400],str_x,str_y,end_x,end_y;
int l;
int dx[]={-2,-2,1,2,2,1,-1,-2};
int dy[]={1,2,2,1,-1,-2,-2,-1};
int bfs(){
if(str_x==end_x&&str_y==end_y){
return 0;
}
memset(g,0,sizeof(g));
int front=0,rear=1;
a[1]=str_x;
b[1]=str_y;
while(front<rear){
front++;
int x=a[front],y=b[front];
for(int i=0;i<8;i++){
if(x+dx[i]==end_x&&x+dx[i]<=l&&y+dy[i]>0&&y+dy[i]<l&&!g[x+dx[i]][y+dy[i]]){
rear++;
a[rear]=x+dx[i];
b[rear]=y+dy[i];
g[x+dx[i]][y+dy[i]]=g[x][y]+1;
}
if(x+dx[i]==end_x&&y+dx[i]==end_y){
return g[x][y]+1;
}
}
}
}
using namespace std;
int a[90000],b[90000],g[400][400],str_x,str_y,end_x,end_y;
int l;
int dx[]={-2,-2,1,2,2,1,-1,-2};
int dy[]={1,2,2,1,-1,-2,-2,-1};
int bfs(){
if(str_x==end_x&&str_y==end_y){
return 0;
}
memset(g,0,sizeof(g));
int front=0,rear=1;
a[1]=str_x;
b[1]=str_y;
while(front<rear){
front++;
int x=a[front],y=b[front];
for(int i=0;i<8;i++){
if(x+dx[i]==end_x&&x+dx[i]<=l&&y+dy[i]>0&&y+dy[i]<l&&!g[x+dx[i]][y+dy[i]]){
rear++;
a[rear]=x+dx[i];
b[rear]=y+dy[i];
g[x+dx[i]][y+dy[i]]=g[x][y]+1;
}
if(x+dx[i]==end_x&&y+dx[i]==end_y){
return g[x][y]+1;
}
}
}
}
资源评论
石康豪
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功