這台機器有三顆功能鍵跟數字小鍵盤
功能鈕上分別寫著
1. Insert
2. Query MAX
3. Query MIN
旁邊寫著一行粗字: 極值經查詢後將會刪除
題目看到這各位也明瞭了吧
請你寫出這台機器的程式
可以插入數字並且查詢其中的最大值與最小值
輸入說明 :
每行輸入開頭有三種情形
1: 插入操作,其後會跟著一數字 N 代表插入的數字 (0 ≤ N ≤ 2^31-1)
2: 查詢最大值
3: 查詢最小值
同一時間內最多有 100,0000 個數字
輸出說明 :
每筆查詢輸出一行
每行只有一個數字
範例輸入 :
1 3
1 100
2
1 4
3
範例輸出 :
100
3
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, x
If x = 1 Then Input #1, n
a = List1.ListCount
If x = 1 Then List1.AddItem n - 90000000000#
If x = 2 Then Print #2, List1.List(0) + 90000000000#: List1.RemoveItem (0)
If x = 3 Then Print #2, List1.List(a - 1) + 90000000000#: List1.RemoveItem (a - 1)
Loop
Close
Close
End
End Sub
作者已經移除這則留言。
回覆刪除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)
Line Input #1, r
b = Split(r)
If Val(b(0)) = 1 Then
List1.AddItem Val(b(1)) + 1000000
End If
If Val(b(0)) = 2 Then Print #2, List1.List(List1.ListCount - 1) - 1000000: List1.RemoveItem (List1.ListCount - 1)
If Val(b(0)) = 3 Then Print #2, List1.List(0) - 1000000: List1.RemoveItem (0)
Loop
Close #2
Close #1
End
End Sub