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