一些小題目

以前的那篇文章寫得太長了,重開一篇

 

1,平面分割問題

 

設有n條封閉曲線畫在平面上,任何兩條封閉曲線恰好相交於兩點,任何三條封閉曲線不相交於同一點,問這些封閉曲線把平面分割成的區域個數。

 

實際上。第n個曲線增加了平面的區域個數爲2(n-1)

A(n)=A(n-1)+2(n-1),當n=1時,A(1)=2

代碼簡單的遞推或者遞歸都可以實現

 

2, 區間染色問題

 

給出n個區間,已知對於[t0,t1]的任一點,都至少被一個區間所覆蓋,要求對其中若干個區間進行染色,是的僅被一個染色區間覆蓋的區域長度不少於2/3*(t1-t0).

 

a,首先對染色區間做處理,去掉一個區間被其他區間覆蓋的情況

如下這種

------------

   ---------------

     ----------------

其中的第二行被第一行和第三行覆蓋,去掉第二行的這個區間

則,剩餘的區間爲以下的這種情況

x---------    y-----------

       z-----------

統計奇數區間長度L1=(b1-a1)+(b3-a3),偶數區間長度L2,以及奇偶長度(不被其他覆蓋的區域)L3=a2-a1+(a3-b1+a4-b2+..+)+b[n]-b[n-1]

 

只需證明若L1,L2<2/3*(t1-t0),則必有L3>=2/3*(t1-t0) 即可

 

證明很簡單,省略了

代碼如下

 

3, 論文改煩了,做了一道簡單的題目消遣了一下。花了25分鐘。。。。。。。。。。。。。。。。。。。。。挺簡單的,就不寫分析了

 

有道2009複賽第一題
Problem Statement:

如果一個數字十進制表達時,不存在連續兩位數字相等,則稱之爲“不重複數”。例如,105,1234和12121都是“不重複數”,而11,100和1225不算。給定一個long類型數字A,返回大於A的最小“不重複數”。

Definition:

Class: UnrepeatingNumbers 
Method: next 
Parameters: long 
Returns: long 
Method signature: long next(long A)
(be sure your method is public) 

Constraints:

A 取值範圍是[0, 10^17],注意是閉區間。

 

 

Examples:
0) 54
  returns: 56
  大於54的最小數字是55,但55不是“不重複數”。下一個數字是56,它滿足條件。

 

1) 10
  returns: 12

 

2) 9
  returns: 10

 

3) 98
  returns: 101
  99和100都不是“不重複數”, 101是。

 

4) 21099
  returns: 21201

 

 

4,有2^n個選手參加比賽。一直有兩個選手比賽的時候總是強的一方獲勝。且不會出現某兩個選手一樣強的情況。每個選手每天至多同一個對手比賽。試給出一種賽程的安排,使得在n*(n+1)/2天內確定所有選手的強弱。。

 

分析:對這個題目,由題目中所描述的,所有的選手強弱必然有個順序,所以

就不會存在a>b>c>a這種圈存在

這種強弱關係是單鏈式的。

 

 

測試例子

 

10

1 0 0 0 0 0 0 0 0 1

1 1 1 1 1 1 1 1 1 1

1 0 1 1 1 1 1 1 1 1

1 0 0 1 1 1 1 1 1 1

1 0 0 0 1 1 1 1 1 1

1 0 0 0 0 1 1 1 1 1

1 0 0 0 0 0 1 1 1 1

1 0 0 0 0 0 0 1 1 1

1 0 0 0 0 0 0 0 1 1

0 0 0 0 0 0 0 0 0 1

結果

 

2vs1

3vs1

3vs2

4vs1

4vs3

5vs1

5vs4

6vs1

6vs5

7vs1

7vs6

8vs1

8vs7

9vs1

9vs8

10vs1

total=16

10>1>9>8>7>6>5>4>3>2

 

5,方格

存在一個N*N的點陣,每個點都與上下左右相鄰的點之間有一條有向邊連接,但是這條有向邊的放下爲向左或者向下。每條有向邊都有一個權值。左上角的點座標爲(1,1)其他的點向右,向下,座標遞增。每個點到(1,1)點的所有路徑的長度都相等。給定一個長度,求這個點在該圖上的座標。但是每次都只能詢問當前點到本列最右端和最下端之間的距離。

 

算法:

1,先從起始點開始向下一直查詢直到下一個點到源點的距離大於給定的長度時停止

2,然後向右查找直到當前點的到源點的距離大於給定的長度爲止

3,然後向上查找當前點到源點的距離,直到小於給定的長度爲止

重複2,3過程,直到當前點到源點的距離等於給定的長度

輸出座標

 

同時在查找過程中,也可以輸出每個當前點的座標,作爲查找的路徑

 

 

以前做的一道題:最長詞鏈,字典序詞鏈。

忘了,又做了一遍~~~

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章