POJ 3049 DFS

来源:互联网 发布:mac版同花顺使用技巧 编辑:程序博客网 时间:2024/06/06 07:08

思路:暴搜

//By SiriusRen#include <cstdio>#include <iostream>#include <algorithm>using namespace std;int l,c,yuan,fu,lenth;char a[16],s[16];bool Yuan(char x){    if(x=='a'||x=='e'||x=='i'||x=='o'||x=='u')return 1;    return 0;}void dfs(int x){    if(lenth==l){        if(yuan&&fu>=2)printf("%s\n",s+1);        return;    }    for(int i=x;i<=c;i++){        lenth++;        if(Yuan(a[i]))yuan++;        else fu++;        s[lenth]=a[i];        dfs(i+1);        lenth--;        if(Yuan(a[i]))yuan--;        else fu--;    }}int main(){    scanf("%d%d",&l,&c);    for(int i=1;i<=c;i++)cin>>a[i];    sort(a+1,a+1+c);    dfs(1);}

这里写图片描述

0 0