解题思路:
基础深搜
注意事项:
参考代码:
#include"iostream"
#include"cstdio"
#include"queue"
#include"string.h"
using namespace std;
typedef struct{
int dis,num;
}node;
int main(){
int n,k,ans=0;
bool a[1000000];
cin>>n>>k;
memset(a,false,sizeof(a));
queue
node olds;
olds.dis=0,olds.num=0;
Q.push(olds);
a[0]=true;
while(!Q.empty()){
olds=Q.front();
Q.pop();
ans=olds.dis;
int p=olds.num;
int w=(p+1)%n;
if(!a[w]){
a[w]=true;
node news;
news.dis=olds.dis+1,news.num=w;
Q.push(news);
}
w=(p+k)%n;
if(!a[w]){
a[w]=true;
node news;
news.dis=olds.dis+1,news.num=w;
Q.push(news);
}
}
cout<<olds.dis;
return 0;
}
0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复