2012年3月2日 星期五

[USACO] sec1-5_Checker_Challenge

哈!~好事成雙 今天又順利的第一次送出即AC

CH1 終於結束了 邁出下一步吧~
----------------------------------------------------------------
這題使用了神奇的位元運算 利用某位元=1記錄無法放皇后的位置

若是紀錄左斜線 每次遞迴下去時<<1

相反的 弱勢紀錄又斜線 每次遞迴便>>1

另外 p = pos & (~pos + 1); 這行是把從右邊數過來第一個1左邊的位元都清為0
----------------------------------------------------------------
USER: Lee Pu [leepupu1]
TASK: checker
LANG: C++

Compiling...
Compile: OK

Executing...
Test 1: TEST OK [0.000 secs, 3172 KB]
Test 2: TEST OK [0.000 secs, 3172 KB]
Test 3: TEST OK [0.000 secs, 3172 KB]
Test 4: TEST OK [0.000 secs, 3172 KB]
Test 5: TEST OK [0.000 secs, 3172 KB]
Test 6: TEST OK [0.011 secs, 3172 KB]
Test 7: TEST OK [0.054 secs, 3172 KB]
Test 8: TEST OK [0.119 secs, 3172 KB]

All tests OK.
YOUR PROGRAM ('checker') WORKED FIRST TIME! That's fantastic
-- and a rare thing. Please accept these special automated
congratulations.

Here are the test data inputs:

------- test 1 ----
6
------- test 2 ----
7
------- test 3 ----
8
------- test 4 ----
9
------- test 5 ----
10
------- test 6 ----
11
------- test 7 ----
12
------- test 8 ----
13
Keep up the good work!
Thanks for your submission!


The Code

沒有留言:

張貼留言