Rikka with string(DFS + WrongAnswer)

#include <cstdio>#include <cstring>#include <algorithm>using namespace std;char str[1005];int len;int flag;int judge()//判断是否是回文数!{for(int i = 0; i <= len / 2; i++){if(str[i] != str[len – i – 1]) return 1;}return 0;}void dfs(int x)//DFS!{if(flag == 0) return;//flag=0,即递归出口已到if(x == len){if(judge())<span style="white-space:pre"></span>//如果不为回文数!{printf("%s\n", str);flag = 0;}return;}if(str[x] <= 'z' && str[x] >= 'a')//不是'?'往下一位搜索{dfs(x + 1);return;}if(str[x] == '?'){for(int i = 'a'; i <= 'z'; i++)//如果是'?'则按照字典序来全部替换{str[x] = (char)i;dfs(x + 1);//替换之后继续往下一位深搜str[x] = '?'; <span style="white-space:pre"></span>//因为每一次只判断一个问号,所以深搜完后要还原!}}}int main(){int n;while(scanf("%d", &n) != EOF){scanf("%s", str);len = strlen(str);flag = 1;dfs(0);if(flag){printf("QwQ\n");}}return 0;}

,谁说的,人非要快乐不可,好像快乐由得人选择。

Rikka with string(DFS + WrongAnswer)

相关文章:

你感兴趣的文章:

标签云: