#27450: Java SE?


r1cky (hehe)

學校 : 國立臺灣師範大學
編號 : 158637
來源 : [49.217.199.25]
最後登入時間 :
2024-11-17 23:54:31
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [101.10.9.157] | 發表日期 : 2021-10-07 14:25

#4: 20% SE ()

程式終止

雖然程式有bug,但怎麼會SE?請問這是什麼東西的問題
 
#27451: Re:Java SE?


linlincaleb@gmail.com (臨末之頌)

學校 : 新北市立板橋高級中學
編號 : 132772
來源 : [203.64.161.123]
最後登入時間 :
2024-07-29 10:02:49
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [203.64.161.156] | 發表日期 : 2021-10-07 14:49

#4: 20% SE ()

程式終止

雖然程式有bug,但怎麼會SE?請問這是什麼東西的問題


應該是跑太多東西 我上次也這樣

 
#27452: Re:Java SE?


jam930725@gmail.com (浮沉沉沉沉沉沉沉沉)

學校 : 國立臺中科技大學
編號 : 124762
來源 : [123.241.38.232]
最後登入時間 :
2024-10-01 22:15:14
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [123.110.34.107] | 發表日期 : 2021-10-07 15:57

#4: 20% SE ()

程式終止

雖然程式有bug,但怎麼會SE?請問這是什麼東西的問題


應該是跑太多東西 我上次也這樣

我之前用JAVA寫這題也是SE
不過是有訊息的

#0: 20% SE ()

無法讀取裁判機,請確認與裁判機加密鎖是否相符!Read timed out

 

 
#27470: Re:Java SE?


r1cky (hehe)

學校 : 國立臺灣師範大學
編號 : 158637
來源 : [49.217.199.25]
最後登入時間 :
2024-11-17 23:54:31
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [114.32.128.128] | 發表日期 : 2021-10-08 19:10

#4: 20% SE ()

程式終止

雖然程式有bug,但怎麼會SE?請問這是什麼東西的問題


應該是跑太多東西 我上次也這樣

我之前用JAVA寫這題也是SE
不過是有訊息的

#0: 20% SE ()

無法讀取裁判機,請確認與裁判機加密鎖是否相符!Read timed out

 


好奇怪喔,不懂問題出在哪,因為如果像是TLE、WA之類的我都可以理解我的程式哪裡有錯,可是像這樣就很不懂,也不知道怎麼改,還是是不是有其他的限制導致Java無解?

 
#27471: Re:Java SE?


r1cky (hehe)

學校 : 國立臺灣師範大學
編號 : 158637
來源 : [49.217.199.25]
最後登入時間 :
2024-11-17 23:54:31
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [114.32.128.128] | 發表日期 : 2021-10-08 19:13

#4: 20% SE ()

程式終止

雖然程式有bug,但怎麼會SE?請問這是什麼東西的問題


應該是跑太多東西 我上次也這樣

我之前用JAVA寫這題也是SE
不過是有訊息的

#0: 20% SE ()

無法讀取裁判機,請確認與裁判機加密鎖是否相符!Read timed out

 


剛剛在本題狀況中看到你有AC,想請問大概是使用甚麼方式,謝謝!

 
#27472: Re:Java SE?


jam930725@gmail.com (浮沉沉沉沉沉沉沉沉)

學校 : 國立臺中科技大學
編號 : 124762
來源 : [123.241.38.232]
最後登入時間 :
2024-10-01 22:15:14
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [123.110.34.107] | 發表日期 : 2021-10-08 20:15

剛剛在本題狀況中看到你有AC,想請問大概是使用甚麼方式,謝謝!

就...那篇解題報告用的方法 用PriorityQueue 加上自訂的類別(Pair)、comparator(用在PriorityQueue排序的)解的

首先先來定義 蹲下的總人數為 count 以及 pq

PriorityQueue <Pair> pq = new PriorityQueue <Pair> (new Comparator <Pair>(){

    @Override

    public int compare(Pair a, Pair b){

        if(a.b == b.b)   // b -> begin, e -> end 

        return a.e - b.e;

        return a.b - b.b;

    }

});

將所有區間都offer()到pq內後

一次讀取兩個區間(這裡以 a 以及 b 作為代表) 判斷2者的關係

如果a b沒有重疊 那就把 count += a區間的人數, 把b丟回pq內

如果a b重疊  並且a的結尾被包含在b區間中 那就把 count += a的開頭~b的開頭 然後把後面沒有重疊的區間 丟入pq內

最後一種情況 就是b被包含在a中 一樣 count += 前面沒有重疊的部分 然後把後面沒有重疊的區間丟入pq中

重複動作 直到pq.size() < 2

 

如果 !pq.isEmpty()

就把區間給poll()出來 然後count += 該區間大小

 

最後輸出  總人數 - count

 
 
#27473: Re:Java SE?


r1cky (hehe)

學校 : 國立臺灣師範大學
編號 : 158637
來源 : [49.217.199.25]
最後登入時間 :
2024-11-17 23:54:31
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [114.32.128.128] | 發表日期 : 2021-10-08 20:20

剛剛在本題狀況中看到你有AC,想請問大概是使用甚麼方式,謝謝!

就...那篇解題報告用的方法 用PriorityQueue 加上自訂的類別(Pair)、comparator(用在PriorityQueue排序的)解的

首先先來定義 蹲下的總人數為 count 以及 pq

PriorityQueue pq = new PriorityQueue (new Comparator (){

    @Override

    public int compare(Pair a, Pair b){

        if(a.b == b.b)   // b -> begin, e -> end 

        return a.e - b.e;

        return a.b - b.b;

    }

});

將所有區間都offer()到pq內後

一次讀取兩個區間(這裡以 a 以及 b 作為代表) 判斷2者的關係

如果a b沒有重疊 那就把 count += a區間的人數, 把b丟回pq內

如果a b重疊  並且a的結尾被包含在b區間中 那就把 count += a的開頭~b的開頭 然後把後面沒有重疊的區間 丟入pq內

最後一種情況 就是b被包含在a中 一樣 count += 前面沒有重疊的部分 然後把後面沒有重疊的區間丟入pq中

重複動作 直到pq.size() < 2

 

如果 !pq.isEmpty()

就把區間給poll()出來 然後count += 該區間大小

 

最後輸出  總人數 - count

 

大概了解了,謝謝

 
#27549: Re:Java SE?


r1cky (hehe)

學校 : 國立臺灣師範大學
編號 : 158637
來源 : [49.217.199.25]
最後登入時間 :
2024-11-17 23:54:31
b526. 先別管這個了,你聽過微鼓勵嗎? -- 104學年度板橋高中校內資訊學科能力競賽(一) | From: [114.32.128.128] | 發表日期 : 2021-10-11 17:43

剛剛在本題狀況中看到你有AC,想請問大概是使用甚麼方式,謝謝!

就...那篇解題報告用的方法 用PriorityQueue 加上自訂的類別(Pair)、comparator(用在PriorityQueue排序的)解的

首先先來定義 蹲下的總人數為 count 以及 pq

PriorityQueue pq = new PriorityQueue (new Comparator (){

    @Override

    public int compare(Pair a, Pair b){

        if(a.b == b.b)   // b -> begin, e -> end 

        return a.e - b.e;

        return a.b - b.b;

    }

});

將所有區間都offer()到pq內後

一次讀取兩個區間(這裡以 a 以及 b 作為代表) 判斷2者的關係

如果a b沒有重疊 那就把 count += a區間的人數, 把b丟回pq內

如果a b重疊  並且a的結尾被包含在b區間中 那就把 count += a的開頭~b的開頭 然後把後面沒有重疊的區間 丟入pq內

最後一種情況 就是b被包含在a中 一樣 count += 前面沒有重疊的部分 然後把後面沒有重疊的區間丟入pq中

重複動作 直到pq.size() < 2

 

如果 !pq.isEmpty()

就把區間給poll()出來 然後count += 該區間大小

 

最後輸出  總人數 - count

 

 

感謝,現在AC了

 
ZeroJudge Forum