天天看点

【清澄OJ】枚举字串

1、隔了将近半个月没写程序了吧,居然连DFS都写了半天。。。真是不得了啊。

2、半个月都在做什么呢?在看书学习,恶补计算机常识,还有做项目,现在终于会做项目了。我觉得做项目和搞ACM的区别是,ACM要求你把少数一点知识灵活运用,而做项目要求学习新知识,从零开始。ACM要求所有的代码都是自己编写,做项目可以用开源的代码,所以难度要小。做项目和ACM各有各的乐趣,项目的乐趣在于可以接触许多高端的东西,学习新知识,查资料,写论文;ACM的乐趣也有很多,在此不一一赘述了。

3、最近在准备出国,本来想读Master的,发现申请PhD更加合算。而且我发现出国对ACM并不是很看重,反而是对论文要求很高。所以功利心比较强的朋友不适合搞ACM。心态放平,把ACM当做提高编程熟练度的一个途径,而不是一定要拿个什么牌的(事实上偶然因素很大)。ACM给予我很多,首先是自信,其次是拼搏的精神,最后是广阔的视野。即使真的拿不到牌,也没有关系了。我努力过,付出过,得到过,这就够了。

#include<cstdio>

using namespace std;

char s[5]="ABCD",temp[5];

void dfs(int num,int depth){

 temp[depth]=s[num];

 if(depth==3){

    printf("%s\n",temp);

    return;

 }

 for(int i=0;i<=3;i++)

  dfs(i,depth+1);

 return;

}

int main(){

 for(int i=0;i<=3;i++)

       dfs(i,0);

 return 0;

}

继续阅读