[牛客网]快饿死的XzzF(DFS)
时间:2019-10-11
本文章向大家介绍[牛客网]快饿死的XzzF(DFS),主要包括[牛客网]快饿死的XzzF(DFS)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
题目来源:链接:https://ac.nowcoder.com/acm/problem/14714
题目描述
XzzF最近过着吃土的日子,饿的神魂颠倒!突然看到有人在做美食节宣传,有好多好吃的,但想吃到这些好吃的可以不容易!得答对主办方出的题。
现在XzzF拿到这样一道题:长度为N的01字符串,且满足以下条件的方案数有多少种?
1、串中不能有两个或多个连续的0。
例如,10、10101、11101是满足条件的,而00、10001、10010是不满足条件的。
XzzF已经饿的神志不清了!显然没有力气回答这道题了,所以,你一定要帮XzzF吃上那些好吃的,不然就莫得了!
输入描述:
一个整数N(1 <= N <= 20)。
输出描述:
满足题目所述条件的方案数。
示例1
输入
1
输出
2
示例2
输入
2
输出
3
说明
有01、10、11三种满足条件的方案。
基础搜索,用DFS即可,需要分情况讨论,当前是0的话,下一个必然是1,如果当前是1的话,下一个可以0也可以1,n<20,直接暴力搜索即可。
#include <bits/stdc++.h>
using namespace std;
int n, ans = 0;
char d[2] = {'0', '1'};
char s[25];
void dfs(int x){
if(x==n+1){
ans++;
return;
}
if(s[x-1]=='1')
for(int i=0; i<2; i++){
s[x] = d[i];
dfs(x+1);
}
else{
s[x] = '1';
dfs(x+1);
}
}
int main(){
cin >> n;
s[0] = '1';
dfs(1);
cout << ans;
return 0;
}
原文地址:https://www.cnblogs.com/gdgzliu/p/11653547.html
- React Native动画Animated详解
- iOS动画总结
- React Native之react-native-scrollable-tab-view详解
- iOS 本地轻量级数据存储之NSUserDefaults
- Android Studio配置Kotlin环境
- Android 应用安装过程分析
- React Native之TextInput组件实现联想输入
- React Native之轻量级存储AsyncStorage
- [先行者课程]--0312视差效果--课堂笔记
- Android 绿色应用公约
- React-Native组件之 TabBarIOS和TabBarIOS.Item
- [先行者周日课程-0305] web前端组件 之 拖动窗口
- react-native城市列表组件
- [前端常见病] 之 后端数据还没有,前端怎么进行?
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法