之前解的時候沒有想很多,直接用內建的 qsort 去排序,後來整理
解答的時候才發現換到新系統後,時間會超出限制所以改用
binary insertion sort (應該是),就可以把原本的 TLE 縮減到 0.03 秒,
接下來還有 10170 和 100 要改...Orz
2008年10月5日 星期日
2008年9月26日 星期五
837 Light and Transparencies
題目網頁:http://acm.uva.es/problemset/v8/837.html
因為題目有提到,沒有垂直 X 軸的線 (同一條線的 x1 != x2),所有 film 的兩端也不會重疊 (每個 x 都是獨一無二的點),所以就不必管 y ,將所有的 x 作排序後,再做計算,看看跟哪些 film 有重疊,來計算 r 是多少,不同 segment 的判斷,是由兩端的 x 值來決定,而不是 r ,討論區裡的 sample input 有些是錯誤的,沒有什麼特殊的 input ,不要想太多就可以 AC 了 。
因為題目有提到,沒有垂直 X 軸的線 (同一條線的 x1 != x2),所有 film 的兩端也不會重疊 (每個 x 都是獨一無二的點),所以就不必管 y ,將所有的 x 作排序後,再做計算,看看跟哪些 film 有重疊,來計算 r 是多少,不同 segment 的判斷,是由兩端的 x 值來決定,而不是 r ,討論區裡的 sample input 有些是錯誤的,沒有什麼特殊的 input ,不要想太多就可以 AC 了 。
2008年7月22日 星期二
memory address and Little-Endian
最近看了一些有關 Big-Endian 與 Little-Endian 的資料,就寫個小程式觀察一下
編譯環境:Windows XP、minGW
學到的幾點:
用 C 語言窺探記憶體
http://libai.math.ncu.edu.tw/bcc16/pool/1.33.shtml
編譯環境:Windows XP、minGW
#include <stdio.h>
#include <limits.h>
int main(){
long a,b[6];
printf("int max =%d\tlong max=%d\n\n",INT_MAX,LONG_MAX);
printf("address of variables(a defined first):\n");
printf("b[0]\tb[1]\tb[2]\n%u\t%u\t%u\n\n",&b[0],&b[1],&b[2]);
printf("b[4]\tb[5]\ta\n%u\t%u\t%u\n\n",&b[4],&b[5],&a);
a=0x1234abcd;
printf("about endian:\n\n");
printf("set a's value = %x\n\n",a);
unsigned char *ptr;
ptr=(unsigned char *)&a;
printf("value store in the bytes of a\n1st\t2nd\t3rd\t4th\n");
printf("%x\t%x\t%x\t%x\n",*ptr,*(ptr+1),*(ptr+2),*(ptr+3));
return 0;
}
學到的幾點:
- 這個編譯環境下,int 與 long 最大值相同 ( C90 的 INT_MAX 為 32,767),所使用 byte 數也相同。
- 變數的記憶體位址是後宣告的在前面,而且有些沒有用到 (可見參考網頁)。
- 目前大部分的 CPU 都是使用 Little-Endian
用 C 語言窺探記憶體
http://libai.math.ncu.edu.tw/bcc16/pool/1.33.shtml
2008年7月12日 星期六
預設一開機便自動登入某帳號 ( Windows XP )
1. 開始 -> 執行 -> 「control userpasswords2」
2. 先選取要登入的帳號
3. 取消 「必須輸入使用者名稱和密碼,才能使用這台電腦」
4. 點選「套用」
另外發現,在「cmd」 下輸入此指令也可運作,輸入「control」則會出現「控制台」。
2008年7月7日 星期一
828 Deciphering Messages
題目網頁:http://acm.uva.es/problemset/v8/828.html
莫名其妙卡很久的題目,照題意不難解,只是有些例外要多想一下。
莫名其妙卡很久的題目,照題意不難解,只是有些例外要多想一下。
Sample Input:
3
RSAEIO
2
5
RTSSKAEAGE
GRSCAV
RGSSCAV
RUSIQO
RUSSGAACEV JEGIITOOGR
AABBCCDDEEFFGHVXYZ
28
3
AJAAGBNNQ
AAAACBBJBQQ
AZAAABBBB
ABC
5
3
AFBBFCCFA
AXB
AFBBFCCFAAFBBFCCFAAFBBFCCFA
Sample Output:
RICE
error in encryption
EAT
error in encryption
SEAT HERE
HELLO
YAHOO
XYZ
AAA
VSW
AAAAAAAAA
訂閱:
意見 (Atom)

