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;
}