首页 > 其他 > 详细

CF 不知哪一题

时间:2019-10-17 00:18:16      阅读:50      评论:0      收藏:0      [点我收藏+]

写在前面

我怎么就学不会\(DP\)技术分享图片

链接

Idea

\(BFS\),虽然老师让用\(DP\)写法做。(蒟蒻不会,所以就用了\(BFS\)技术分享图片

我们定义结构体。

元素有当前的和\((val)\),当前向上的数字\((up)\),已经走的步数\((tmp)\)

一开始\(val=0,tmp=0,up=1\),放入队列,再定义一个记录步数的数组,初始化为\(-1\),然后就可以爆搜了

struct node{
    int val,tmp,up;
}now,net;

Code

int sum[maxn];
struct node{
    int val,tmp,up;
}now,net;
inline void bfs(){
    now.val=0; now.tmp=0; now.up=1;
    queue<node> q;
    q.push(now);
    while(q.size()){
        now=q.front(); q.pop();
        if(now.val<maxn){
            for(int i=1;i<=6;i++){
                if(now.up==i||now.up+i==7||sum[now.val+i]!=-1) continue;
                net.tmp=now.tmp+1;
                net.val=now.val+i;
                net.up=i;
                sum[net.val]=net.tmp;
                q.push(net);
            }
        }
    }
}
int main(){
    memset(sum,-1,sizeof sum);
    bfs();
    int T=read();
    while(T--){
        int n=read();
        printf("%d\n",sum[n]);
    }
    return 0;
}

\[ The \quad End \]

\[ \text{我要记住你的样子,像鱼记住水的拥抱,像云在天空中停靠;}\\ \text{我要忘了你的样子,鱼忘了海的味道,所有梦和烦恼-《像鱼》王贰浪} \]

CF 不知哪一题

原文:https://www.cnblogs.com/cbyyc/p/11688258.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!