歷屆試題 分考場(DFS,染色問題)

2021-09-12 10:32:21 字數 883 閱讀 8814

歷屆試題 分考場

時間限制:1.0s 記憶體限制:256.0mb

問題描述

n個人參加某項特殊考試。

為了公平,要求任何兩個認識的人不能分在同乙個考場。

求是少需要分幾個考場才能滿足條件。

輸入格式

第一行,乙個整數n(1樣例輸出

4
樣例輸入

5

101 2

1 31 4

1 52 3

2 42 5

3 43 5

4 5

樣例輸出

5
ac_code:

#include using namespace std;

int f[105][105];

int v[105][105];

int c[105];

int flag,ans;

int n,m,a,b;

void dfs(int s,int tot,int num)

if(num == n)//分配完了

for(int i = 1; i <= tot; i++)//tot代表已經分了tot間教室

} if(flag)//可以分配到已經存在的教室

}v[tot+1][++c[tot+1]] = s;//不能分配到已經存在的教室,新開一間教室把他放進去

dfs(s+1,tot+1,num+1);

--c[tot+1];

} int main()

ans = n;

dfs(1,0,0);

cout

}

歷屆試題 分考場 dfs

問題描述 n個人參加某項特殊考試。為了公平,要求任何兩個認識的人不能分在同乙個考場。求是少需要分幾個考場才能滿足條件。輸入格式 第一行,乙個整數n 1 public class 分考場 dfs 1 system.out.println num 為所有的學生編排考場 param id 學生的id pa...

歷屆試題 分考場 dfs

時間限制 1.0s 記憶體限制 256.0mb 問題描述 n個人參加某項特殊考試。為了公平,要求任何兩個認識的人不能分在同乙個考場。求是少需要分幾個考場才能滿足條件。輸入格式 第一行,乙個整數n 1題解 搜尋一下,可以放到已經有的房間就放進去,考慮所有情況,每次搜尋還要多開闢乙個空間,本來想用二維v...

分考場 DFS 染色問題

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 n個人參加某項特殊考試。為了公平,要求任何兩個認識的人不能分在同乙個考場。求是少需要分幾個考場才能滿足條件。輸入格式 第一行,乙個整數n 1輸出格式 一行乙個整數,表示最少分幾個考場。樣例輸入58 1 21 3 1 42 3 2 4...