HDU 2095 find your present (2)
生活随笔
收集整理的這篇文章主要介紹了
HDU 2095 find your present (2)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
??? 原以為這是一純水題,就果斷開(kāi)了1000000了數(shù)組給它(1300多K),沒(méi)想Memory果斷超了,后來(lái)又用鏈表做(寫(xiě)了2000多K),再次無(wú)情的被Memory刷了,無(wú)耐百度一下,竟然發(fā)現(xiàn)別人的代碼才300多B(表示我的有2000多B),發(fā)現(xiàn)自己的方法OUT了。
這段代碼中最重要的是異或思想;相同的數(shù)異或后為0,0再和那個(gè)唯一的數(shù)異或(異或滿足交換律,所以“禮物”,在前面出現(xiàn)和在最后出現(xiàn)沒(méi)有區(qū)別,結(jié)果不變),結(jié)果即為那個(gè)不相同的數(shù).杭電的測(cè)試數(shù)據(jù)太弱了,如果n為7, 3個(gè)1,3個(gè)2,一個(gè)3,結(jié)果就錯(cuò)了。(?異或在本空間有介紹,如有不明,可以see一see
代碼 1 #include <stdio.h>2 ?int main ( )
3 {
4 int n,odd,x;
5 while ( scanf ( "%d" , &n ) == 1 && n )
6 {
7 odd = 0;//初始化
8 while ( n-- )
9 {
10 scanf ( "%d" , &x );
11 odd ^= x;//對(duì)每個(gè)數(shù)異或
12 }
13 printf ( "%d\n" , odd );
14 }
15 return 0;
16 }
17
18
19
?
轉(zhuǎn)載于:https://www.cnblogs.com/Lvsi/archive/2011/01/28/1947238.html
總結(jié)
以上是生活随笔為你收集整理的HDU 2095 find your present (2)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: asp.net MVC 权限设计(续)
- 下一篇: ckeditor+ckfinder+sy