北郵OJ 268 程序管理 14網研上機C

2021-07-28 12:51:09 字數 1155 閱讀 8233

markdown挺清新的!

problem c. 程序管理

題目描述

在作業系統中,程序管理是非常重要的工作,每個程序都有唯一的程序標識(pid)。每個程序都可以啟動子程序,此時我們稱它為其子程序的父程序,除了pid為0的程序之外,每個程序有且只有乙個父程序,在這個任務中,你需要實時維護作業系統執行中的三個基本操作:

1.fork pid1 pid2:標識為pid1的程序啟動了乙個標識為pid2的子程序。

2.kill pid:結束標識為pid的程序。請注意,與此同時所有pid的子程序也將同時結束。如果pid是不存在或已經結束的程序,則不做任何操作。

3.query pid:查詢標識為pid的程序是否仍然存在。

在初始狀態下,系統只開啟了pid為0的程序,並且在任何情況下該程序不會結束。

輸入格式

輸入的第一行是乙個整數t(t<=50),表示輸入的資料組數。

每組測試資料的第一行是乙個整數n(1<=n<=100),表示操作的數量。

沒下來n行,每行按照上面的描述給出每個操作,輸入保證所有的程序的pid都不相同,且乙個程序結束後不會被重新啟動,所有pid都是[1,100]之間的整數。

輸出格式

5 fork 0 1

query 1

kill 1

query 1

query 2

1 query 0

輸出樣例

yes

no no

yes

#include 

#include

#define maxsize 200

using

namespace

std;

typedef

struct binode*bitree;

binode tree[maxsize];

binode& createnode(int index)

}void deltree(int index)

}int main()

tree[0].turnon=true;

//operate

while (n--)}}

return

true;

}

北郵OJ 269 網路傳輸 14網研上機D

本題的核心思想 因為要查詢多個點作為起點的情況,因此要多次dijkstra和多次對dis 的初始化,又因為是無向圖,對floyd優化後,效率甚至比dijkstra高 所以我們採取優化的flyod 別忘了dis j i dis i j 全排列演算法 因為我們求出了每個點到另外點的最短時間,但是如何走一...

北郵網研17上機題

找1 1000000000內所有可開二次根且可開三次根的數。別直接for迴圈,肯定超時。先把所有可能的答案都找出來,再做二次判斷。輸入9 81 4 8 5 7 9 2 2 5 3 5 5 9 3 5 8 3 4 3 8 5 7 9 5 1 9 輸出 1826 2040 include 在這裡插入描述...

2012北郵網研院上機題

a 列印字串 時間限制 1000 ms 記憶體限制 65536 kb 題目描述 老師有乙個問題想考考mabo,但是mabo不會,所以想請你來幫幫忙。問題如下 給一串字串,統計其中某個字元的個數。輸入格式 首先輸入乙個整數t,表示一共有t組資料 0 t 10。接下來每行乙個字母x x為 a z 或者 ...