#17005:


freedom501999@gmail.com (帥氣魔方生)

學校 : 不指定學校
編號 : 88611
來源 : [39.8.203.54]
最後登入時間 :
2019-05-30 22:56:25
d244. 一堆石頭 | From: [27.52.9.157] | 發表日期 : 2019-02-27 22:08

這題要宣告一個全域陣列 

int stone[1000000][2]={0};

因為測資可能很大,所以我宣告了一百萬個編號

stone[ i ][ 0 ] 是石頭的編號,stone[ i ][ 1 ] 是該編號的石頭出現次數

讀取時從 stone[ 0 ][ 0 ] 開始,若 stone[ i ][ 0 ] == 讀取的編號 a,stone[ i ][ 1 ] 加一

若都不等於,表示為新編號,假設當前已知 n 個編號 ( stone[ 0 ][ 0 ] ~ stone[ n - 1 ][ 0 ] )

則 stone[ n ][ 0 ] = a ,n ++

不需要排序,每次讀新編號,從 stone[ 0 ][ 0 ] 到 stone[ n - 1 ][ 0 ] 線性搜尋

讀完後,從 0 ~ n - 1 ,若 stone[ i ][ 1 ] 不能被 3 整除,stone[ i ][ 0 ] 就是答案

 
ZeroJudge Forum