2012年4月27日 星期五

海星


  每個人都有自己的喜歡的東西,而Fuko最喜歡的就是海星了。你沒看錯,請不要對別人的興趣不以為然。



而且善良純真的Fuko秉持著與民同樂的想法,想把快樂散佈到這個世界上,她認為只要讓每個人都有海星,這個世界就可以變得和諧愉快。


所以她利用閒暇時間雕刻木製海星,然後一遇到自己的朋友就把海星硬塞到對方手中。


因為這個木製海星是手工製的,所以每一個海星都不會相同,而Fuko會在送出每個海星前在上面標明自己對於這個海星的滿意度x,x越大代表她對這顆海星越滿意。


為了讓自己的雕刻海星更臻於完美,她會不時的回想起她送出的海星中第k好的滿意度,然後利用自己對於海星的驚人記憶力想起那個海星的優缺點進而改進技術。


只可惜人並不是完美的,雖然Fuko對海星有強大的記憶力,可是看到亂七八糟的數字就舉手投降了,這讓她造成了非常大的困擾,沒有辦法想起滿意度就沒有辦法雕刻出更好的海星,當然也就不能讓這個世界更加和平了!


Fuko的姐姐Kouko知道了Fuko的煩惱,所以特地請你來幫她寫一個程式,可以記錄她送出的海星滿意度,並在適當的時候提醒她目前送出的第k好的海星是哪一個。




輸入說明 :


每行有一條指令依序執行,分別為


GIVE X:代表送出一個滿意度為X的海星             ( 0 < X <= 100000000 )
FIND K:代表回想送出的海星中第K好的滿意度   
END:Fuko累了要去睡覺囉!



輸出說明 :


對於下列三種指令


GIVE X:不輸出
FIND K:輸出Fuko送出的海星中第K好的滿意度
END:不輸出並結束程式






範例輸入 :


GIVE 1
GIVE 3
GIVE 5
FIND 1
FIND 2
FIND 3
GIVE 2
GIVE 4
FIND 1
FIND 2
FIND 3
FIND 4
FIND 5
END 


範例輸出 :


5
3





1

2 則留言:

  1. Private Sub Form_Load()
    Me.Hide
    Open App.Path & "\in.txt" For Input As #1
    Open App.Path & "\out.txt" For Output As #2
    Input #1, x
    n = Split(x)
    Do
    If n(0) = "GIVE" Then
    n(1) = n(1) - 100000000
    List1.AddItem n(1)
    Else
    i = n(1) - 1
    Print #2, List1.List(i) + 100000000#
    End If
    Input #1, x
    n = Split(x)
    Loop Until n(0) = "END"
    Close
    Close
    End
    End Sub

    回覆刪除
  2. Private Sub Form_Load()
    Me.Hide
    Open App.Path & "\in.txt" For Input As #1
    Open App.Path & "\out.txt" For Output As #2
    Do While Not EOF(1)
    Input #1, a
    c = Split(a)
    If c(0) = "GIVE" Then List1.AddItem (Val(c(1)) + 1000)
    If c(0) = "FIND" Then Print #2, List1.List(List1.ListCount - Val(c(1))) - 1000
    Loop
    Close #2
    Close #1
    End
    End Sub

    回覆刪除