歡迎辭歡迎來到“篤志以礪,決起而飛”! 如果您是第一次來到本站,建議訪問 本站導讀以便更快地了解本站。 如果您喜歡本站, 歡迎訂閱。 | 有時候,一個好夢或許比夢魘還讓人恐怖。 當不得不從美夢中驚醒,看到一個完全陌生的世界時,即使一聲鳥鳴,一絲晨光,都會是對自己美好夢境的絕妙諷刺。 這時候我是多麼想繼續睡下去,繼續演繹之前的夢境。 這種失落和無奈,讓人失魂落魄,神魂顛倒,恍若隔世。是誰盜走了我的美夢。 在床上坐着,一個顫抖,一個激靈。要努力讓自己相信,那只是一個夢。這是一件多麼殘酷卻又真實的事。 看了看錶,時間指向了早上八點鐘。又是新的一天。四周的床鋪已經空無一人。 一聲嘆息之後,整理一下自己的心情,爬下自己的床。 音樂傳播技術和播放載體的變化給音樂產業帶來了一場變革。傳統唱片業日漸萎縮,傳統唱片的盜版也隨之日漸銷聲匿跡,數字音樂如日中天,產值不斷攀升。 然而,中國原創音樂人並沒有如同世界其他國家的音樂人一樣迎來一場數字音樂的春天,反而發現自己的權益更加無法保護,因為他們面臨一個更為強大、更為肆無忌憚的敵人,那就是無處不在的盜版網站。而這些盜版網站賴以生存的重要手段之一,那就是百度的深度鏈接。 百度在明知不法網站盜版行徑的前提下,仍然不惜助紂為虐,為他們提供深度鏈接這一同路和生存土壤,目的是獲得巨額流量,從而獲得廣告收入,壯大公司利潤,進而在國外股票市場上有所斬獲。在這方面,百度確實成功了,以千億計算的公司市值,李彥宏中國首富的耀眼頭銜,都證明了這一成功。而這一輝煌成果的背後,又有多少音樂從業人員在無奈嘆息? 其實在今天的中國,網站直接購買版權,或者經過權利人許可,通過消費者提供免費正版音樂獲取流量,並將廣告收入和權利人分享的商業模式已經成熟。新浪樂庫、巨鯨音樂網等正版音樂網站就做出了有益的嘗試。而百度則一意孤行,為一己之私利,至今仍在為盜版網站提供深度鏈接,擔任盜版的幫凶,損害音樂權利人的利益。 中國音像協會唱片工作委員會通過這封公開信呼籲所有中國原創音樂產業人員團結起來,通過你們的博客、微博等工具和你們的公眾影響力,讓我們一起: 抗議百度通過成為盜版幫凶獲取不義之財的行徑,敦促百度終止盜版網站的深度鏈接,棄暗投明; 呼籲政府有關部門加大管理力度和執法力度,嚴懲盜版,關閉盜版音樂網站; 懇請音樂消費者到正版音樂網站欣賞和消費音樂,支持正版,支持你們喜愛的音樂人。 讓我們一起迎接數字音樂產業的明媚春天! 中國音像協會唱片工作委員會 最近刷題得進度可以說慢到一定境界上了,今天中午抽空終於把n天前殘留的 1703 給過掉了。 這個題目也是一個並查集的題目。但是在這道題目中,有一個非常重要的性質: 這樣,假設 A、B 兩個人不是在同一個 gang 中,A、C 兩個人不是在同一個 gang 中,就必定有 B、C 兩個人在同一個 gang 中。因此我們可以放心地將 B、C 兩個人合併。 也就是說,每次發現 X Y 在不同的集合中,我們都可以將與 X 不在同一集合的與 Y 合併,將與 Y 不在同一集合的與 X 合併。根據並查集的性質,為了在每次合併時找到與其不在一個集合的元素,我們只需要記錄他們的一個代表元素即可,於是我們使用 opt[x] 代表一個與 x 不在同一個集合的元素。 另外,本題讀入必須使用 scanf,因為即使取消同步,cin 也會超時。 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
/* POJ 1703
* By Ceeji
* Union
*/
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
#define MAX_N 100000
int case_num, n, m;
int parent[MAX_N];
int opt[MAX_N];
void init_set ()
{
for (int i = 0; i < MAX_N; ++i)
parent[i] = i;
memset(opt, 0, sizeof(opt));
}
int get_parent (int p)
{
if (parent[p] == p)
return p;
parent[p] = get_parent(parent[p]);
return parent[p];
}
void set_union (int x, int y)
{
int px = get_parent (x);
int py = get_parent (y);
if (px == py)
return;
parent[px] = py;
}
void do_work ()
{
cin >> n >> m;
init_set ();
char c;
int x, y;
while (m--)
{
scanf("\n%c %d %d", &c, &x, &y);
//cin >> c >> x >> y;
if (c == 'D')
{
if (opt[x] == 0)
{
opt[x] = y;
}
else
{
set_union (opt[x], y);
}
if (opt[y] == 0)
{
opt[y] = x;
}
else
{
set_union (opt[y], x);
}
}
else
{
bool finish = false;
int px = get_parent (x);
int py = get_parent (y);
if (px != py)
{
if ((opt[x] != 0 && get_parent(opt[x]) == py) || (opt[y] != 0 && get_parent(opt[y]) == px))
printf("In different gangs.\n");
else
printf("Not sure yet.\n");
}
else
{
printf("In the same gang.\n");
}
}
}
}
int main ()
{
cin >> case_num;
while (case_num--)
{
do_work ();
}
return 0;
} |
【大學裡有兩種人,一種人佔了大多數,他們“只有兩件值得關心的事:一是把朋友交好,以後有結婚的對象,一是把功課讀好,將來有滿意的出路。”而另一種人極少極少,他們擁有“對社會的關心,對是非的判斷能力,擇善固執的勇氣”。】 【我們的大學生天真、單純、安分、聽話。可是,如果“鬧事”也可以解釋為“以行動來改變現狀”的話,我們這不會鬧事的一代就值得令人憂慮了。四年一過,他就成為社會中堅——一個不懂得關心社會,不會判別是非,不敢行動的社會中堅!】 今年5月27日的《紐約客》雜誌有這樣一篇文章: 我的母親生在柏林,僥倖逃過猶太人的大屠殺。今年母親節,我請她去看場電影。這部影片非常賣座,故事好像與非洲的黑人有關。排隊買票的行列很長。有一個年輕白人在行列間來往發散傳單,勸大家不要買票,因為這部片子是南非製作的。排隊的人大概都想的和我一樣:“看不看由我自己決定,不用你來告訴我。”所以沒人理他。 入場之後,燈黑了電影正要開始,前座的兩個年輕女孩突然站起來面對觀眾,大聲地演講,解釋這部影片如何地蔑視南非黑人的慘境,希望大家抵制。 觀眾中噓聲四起,有人不耐煩地大叫:“這裡是美國;你要抗議到外面去!”也有生氣的聲音喊着:“我們付了五塊錢電影票,讓我們自己決定愛看不看!”偶爾有 個微弱的聲音說:“聽聽她們說什麼也好!”但是群眾的喊聲愈來愈大:“出去!出去!出去!” 坐在我身邊的母親顯得很難過,她轉身對我說:“這兩個年輕女孩竟然願意花十塊錢買票進入一個人人喊打的地方來——或許她們真有點道理也說不定。” 在大家的鼓掌聲中,戲院的工作人員很粗暴地把那兩個女生架走了。燈又黑下來,但是沒幾分鐘,一個年輕人,帶着濃厚的英國腔,站起來說:“這是 一部充滿種族歧視的影片——”憤怒的觀眾打斷了他的話,有人在叫警察,但這個青年毫無懼色,繼續大聲說:“你們不讓我把話說完,我是不會走的!”群眾喊着:“滾蛋!滾蛋!”好不客易,來了兩個警察,笑容滿面地把那傢伙給請了出去。 觀眾情緒還沒有完全穩定下來,一個廿來歲、一臉鬍子的小夥子在後排突然站了起來,說:“不不,我跟他們不是一道的;我跟你們一樣買了票純粹來 看戲的。我只是想到,或許對於這樣一個影響千萬人一生的問題,我們應該有個堅定的道德立場,而不只是追求消遣而已。如果五十年前的人也像剛剛這幾個人這樣 對被迫害的猶太人執着的話,我的祖父也許可以活到今天,不至於死在德國的煤氣房裡。”然後我就聽到一個非常熟悉沙啞的聲音突然響起:“他說的一點不錯;你 可別想叫我閉嘴!”我發覺我六十四歲的老母親站了起來,面對着整個戲院;她全身在顫抖。 這一則不起眼的小故事可以招引出許多值得爭議的問題來。譬如說,這幾個為道德感所驅使的年輕人有沒有權利阻止別人看這部“種族歧視”的電影? 如果我也在戲院里,我會是憤怒的群眾之一,叫他們“滾蛋”主要的原因是,他們沒有權利主宰我的思想——這個電影究竟如何要由我自己看過了再作決定。其次, 如果這一撮以“道德感”為理由的小團體能打斷我的電影,那麼,一個宗教團體、政治黨派、商業集團等等,都可以肆意地來強迫推銷它的理想,那個人還有什麼自由自主可言? 南非的是非善惡也是個棘手的問題。它的種族隔離政策現在是千夫所指,萬人唾棄。南非的白人簡直是廿世紀的污點。事情的另外一面卻是:南非若由黑人自決自主,恐怕歧視與屠殺會比現況更為劇烈——看看烏干達!看看整個非洲大陸! 但是《紐約客》這篇短文令我沉思許久的,卻是這幾個年輕抗議分子的行為。他們不算少數;哥倫比亞大學在南非有金錢的投資,哥大的學生也曾經熱烈地示威過,反對學校當局“善惡不分”的和稀泥作風。而在戲院里“搗亂”的這些年輕人,事實上是一次一次地花五塊錢買票——對學生而言,五塊錢不是個小數目;進到戲院去讓群眾噓罵,然後一次一次地被踢出來。這些人中,當然難免會有少數是為了幼稚的英雄主義或純粹嬉鬧,但大部分的,是為了一個道德立場,擇善固執的理想。在一個人決定到戲院去“鬧事”之前,他必須先具有三個條件。第一,他關心這個世界;因為關心,所以才會去注意南非黑人的困境。第二,他能作價值判斷。對南非種族問題的報導紛紜不一,他得自己決定站在黑白那一邊。第三,他有充分的道德勇氣,充分到促使他付諸行動的地步。於是,他走到戲院去買票;五塊錢,他很可以拿去溜冰或吃掉。 我們的年輕人呢?或者,縮小一點範圍,我們的大學生呢?有多少人具備這三個品質? 就我有限的觀察,非常、非常的少。以對社會的關心而言,我們的學生在大學的四面圍牆裡自給自足地活着,不常把頭伸出來。幾個月前,當十四位省議員集體辭職時,我曾經對幾百位學生作過測驗,要他們寫下議員辭職的原因,結果正如預料,有少數給了支離破碎而模糊的答案,顯然是瀏覽報紙後的殘餘印象。 百分之八十卻很率直地回答:“不知道!” 為什麼不知道?當然是因為缺乏興趣,不關心。坊間雜誌選出來的大學校園“美女”,被人問到社會問題時,嬌滴滴地說:“好可怕喲!”吐吐舌頭。這樣“可愛” 又“純潔”的大學女生為數不少,而且討人喜歡。我們的學生不僅只對台灣本身的社會、政治問題印象模糊,對台灣以外的國際情況就更陌生了。伊索匹亞的饑荒、 烏干達的政變、南美的游擊戰、天主教廷對墮胎與離婚的立場、菲律賓的軍隊暴行等等,都不存在,都沒有意義。沒有關心,自然沒有做價值判斷的需要。根本不知道南非有嚴重的種族問題。當然就不必去思索誰是誰非,因為無從思索起。沒有關心,也就無所謂道德勇氣和道德行動。非洲的幼兒可以死光,南美的軍隊可以強暴婦女,因為事不關己。海山的煤礦可以一崩再崩,桃園的古迹可以拆了又拆,內湖的垃圾山可以燒了再燒,事不關己。大學四年之中,只有兩件值得關心的事:一是把朋友交好,以後有結婚的對象,一是把功課讀好,將來有滿意的出路。對社會的關心,對是非的判斷能力,擇善固執的勇氣,都不在大學的圍牆以內。 換句話說,我們的年輕人天真、單純、聽話;他們絕對不會到戲院里去“鬧事”。 為什麼大學生的關心面那樣狹窄?主要原因之一是,他的環境不鼓勵,甚至於試圖阻礙,他對書本以外的興趣。大概很少有父母沒說過這句話:“你只要把書讀好,其他什麼都不要管!”大學以前這樣說,為了應付聯考。進了大學之後這樣說,為了應付留考、托福、高考、研究所人考等。“只要把書讀好,其他什麼都不要管” 這個金玉良言是應現代科舉制度而產生的。讀書的目的在求技能,用來敲開一層一層考試的門。研讀哲學、歷史、文學、經濟等等,都不是為了增加人生的智慧與了解,而是為了取得謀生的技術。因為這種技術與人生無關,所以可以“什麼都不要管”。可是這個金玉良言實在是經不起考驗的。在“其他什麼都不要管”的前提下,書,根本就不可能讀得好。譬如讀經濟,一個學生可以用課本里的各種定義與學理來解釋“通貨膨脹”,可是要他分析為什麼公務員的薪水要加百分之八他卻目 瞪口呆,我們能說他書讀好了嗎?譬如讀文學,他可以熟讀歐威爾的《一九八四》,洋洋洒洒地寫篇論文討論制度與個人的關係,但是要他對江南案件提出看法,他卻一片空白,我們能說他把書讀通了嗎?這個大千世界可以說是各個學科的實驗室。學生在黑字白紙之間所學到的理論與例證,都還是抽象模糊的,只有在把知識帶到人生的實驗室里去觀照驗證之後,知識才能落實。要我們的學生封閉在大學的圍牆裡“其他什麼都不要管”,等於是把學問與人生割離,也等於要學游泳的人在岸上靠圖解學游泳,卻不沾水,或學解剖的人在暗室里看幻燈片學解剖,卻不動刀子。 我們的學生不會“鬧事”,因為“鬧事”的人要先有自己的主張——不是報紙社論,不是老師的看法,同學的意見,而是自己的主張。對我們單純、天真的學生而言,獨立作價值判斷卻是件非常困難的事。為什麼?高三那年,開始上三民主義。有個沉悶的下午,我在課本中看到一句話:“三民主義是最適合中國人的主義。” 就這麼一句斬釘截鐵的結論。我以為自己漏掉了編者解釋引證的部分,把課本前前後後翻過,卻找不到任何闡釋。十七歲的我坐在書前,感覺到深深的挫折:要達到這樣一個結論,課本編者應該一步一步來,先解釋中國人是怎麼樣的一個民族,然後說明其他主義如何的不適用於中國社會,最後才能邏輯地演繹出“三民主義是最適合中國人的主義”這個結論。可是編者顯然覺得這些辯證的過程毫無必要。 第二天,在課堂上我請求老師解釋“為什麼”。老師很驚訝地望了我一眼,好脾氣地一笑,回答:“課本這麼寫,你背起來就是。聯考不會問你為什麼。” 在我早期的求知過程中,這個小小的經驗是個很大的挫折。基本上,課本編者與授課老師並不認為學生有自己作判斷、下結論的能力,所以才會有這種“你別問為什麼,記住我的答案就行”的態度。他們因此所剝奪於我的,是我求知的權利與獨立判斷的能力。現在的教育方式和過去沒有太大的改變,我們的教育者仍舊習慣於供給“結論”,仍舊不習慣供給學生“方法”,讓他們自己去找結論。最能夠反映這種現象的莫過於作文題目了。多少年來,任何考試中,學生面對的總是什麼“學問為濟世之本”、“忠勇為愛國之本”、“一分耕耘、一分收穫”、“滿招損、謙受益”之類的金玉良言。所謂金玉良言說穿了,也就是死了的人交代下來的“結論 ”。出這種約定俗成的題目可以塑造學生的思想,使他更緊密地成為傳統的一分子,有它教育的意義。但是這種思想傳遞根本上就不容許獨創,不容許學生下自己的結論。如果教育者真正的興趣不在於學生對傳統的妥協與認同,而在於他獨立判斷的能力,那麼同樣的題目就應該以疑問的方式出現:“一分耕耘確能導致一分收穫嗎?你是否同意學問為濟世之本?”或者以挑戰的方式:“試辯論‘忠勇為愛國之本’一說。” 只有這樣不“既定結論”的思想訓練才能真正刺激學生睜着自己的眼睛去觀察身邊紛擾複雜的世界,用自己的頭腦去理出頭緒來。當我們的教育者習慣性地把作好的結論拋下,學生也就懶惰地把結論照章收下;他不需要辛辛苦苦地去思索、摸索。 在我們的環境里,一個能關心、能判斷的學生,卻也不太可能有任何道德行動。一般教育者對學生行動採取壓抑與抵制的態度,目的在求校園的穩定。 有一個專科學生被同學指控偷竊,教官在原告的帶領之下也確實在該生書包中找到贓物,但是在沒有聽過被告辯解之前,就令這名學生退學。幾個大膽的同學出來主持正義,要求學校給被告一個自我辯護的機會。事情結果如何不論,學校當局對這些挺身而出的學生卻有個斬釘截鐵的態度:“去讀你的書,不要多管閑事。誰鬧 事,誰就記過。”奇怪,為什麼我們的公民倫理課一再地教導學生要見義勇為,要當仁不讓,要擇善固執,學生一旦實踐了這些美麗的道德理想,我們卻恐慌地去壓制他?學生對學校措施有所不滿而投書、開會、抗議的時候,不正是最好的公民教育機會,幫助學生學習如何去理性地、公平而民主地解決問題,為什麼我們反而以記過處分作為……的手段?為了表面的安靜穩定而扼殺年輕人的正義感,代價是否太高了一點?敢於表達意見、敢於行動的學生在一次兩次的申誡記過之後,當然也學會了保護自己;他發覺,這個社會根本不希望他有道德勇氣或正義感。 我們的大學生是不會“鬧事”的一群。在考試、舞會、郊遊的世界中,沒有什麼值得“鬧事”的題材。在是非善惡都已經由父母師長孔子孟子下了結論的世界中,沒有什麼難題值得重新省思、費心判斷。在明哲保身、少做少錯的環境中,更沒有什麼“鬧事”的餘地。我們的大學生天真、單純、安分、聽話。可是,如果“鬧事”也可以解釋為“以行動來改變現狀”的話,我們這不會鬧事的一代就值得令人憂慮了。四年一過,他就成為社會中堅——一個不懂得關心社會,不會判別是非,不敢行動的社會中堅!公車應不應漲價?不清楚。路邊水管爆破了,不是我的事。公營機構虧了多少納稅人的錢?不知道。核電廠會不會貽害萬年?不知道。上司舞弊應不應告發?不知道。台灣往哪裡去?不知道,不知道,不知道……一個滿足現狀的民族不可能進步,但是要對現狀不滿,一個人必須先有所關心,用心觀察,觀察之後作判斷,判斷之後付諸行動。關心可以是感性的,只是對於生於斯長於斯的土地的一份愛,但是空有感情無濟於事,它必須有冷靜的理性的支持——判斷與行動需要堅強的理性。台灣的現狀不能令人滿意,但是已經有許多人在關心、判斷之後開始了行動。最好的例子是消費者基金會的推動者,他們已經“鬧”了不少事。台灣需要鬧的事情還很多很多。以婦女問題來說,我們現有的婦女組織還停留在獻花、慰問、穿漂亮的衣服開慈善晚會與孤兒擁抱的階段。在同樣的社會版里,我們讀到七歲的男孩被母親活活燙死、十歲的女孩被賣到妓女戶、十三歲的女兒被養父強暴而懷孕、三十歲的妻子被丈夫打斷肋骨——我們天真可愛的校園美女覺得將來沒事可關心、可“鬧”嗎? 又是一個學期的開始,讓我們想想從哪裡做起吧! 由於在 C++ 中,const 是一個經常被用到的修飾符和關鍵字,有時候人們會想也不想就對其進行了濫用。剛才我看這樣一條語句: void do_work (const int x); 既然 x 是傳值的形參,所以對其的修改本來就不會影響原來的值,那麼為什麼還要加上 const 呢? 其實,加了 const 的主要後果是:無法修改被複制後的 x 的值。比如,本來你可以這樣: x = 5; 雖然這條語句並不會影響調用方傳遞的實參,但是在函數內部,這個 x 是可以當一個臨時變量來處理的。 如果加了 const ,這條語句將產生編譯錯誤:表達式必須是可修改的左值。 由上可見,在這個地方,是否添加 const 並非沒有意義,但是在多數情況下意義不大。加上這個 const 對健壯性的貢獻並不大,但是大部分情況下,直接使用形參作為函數的內部變量也並不合適。或許,這也是設計者為 C++ 標準提供這個語法的目的之一吧。 | |
近期評論