1.樸素演算法
貪心輸入資料時進行記錄,
譬如4 2 4 3
說明在 2列 和 3列 中同學說話 記錄一下
2 3 3 3
說明在 2行 和 3行 中同學說話 記錄一下
找出說話列最多 行最多的 按人數排位置序 輸出位置
#include #include using namespace std;
typedef long long ll;
const int maxn = 1010;
int ah[1100] = , al[1100] = ;
int ph[1100], pl[1100];
int main()
int m, n, k, l, d;
cin>>m>>n>>k>>l>>d;
int tmp = d;
while(tmp--)
else if(ty == tb)
}for(int i = 0; i < maxn; i++)
} }
for(int i = 0; i < maxn; i++)
}} sort(ph, ph + k);
sort(pl, pl + l);
for(int i = 0; i < k; i++) }
if(i < lst)
qsort(arr, brr, i, lst);
if(j > fst)
qsort(arr, brr, fst, j);
}int main()
int n, m, h, l, t;
cin>>n>>m>>h>>l>>t;
int ta, tb, tc, td;
while(t--)
else if(tb == td)
}qsort(arrl,parrl, 0, maxn - 1);
qsort(arrh,parrh, 0, maxn - 1);
qsort(parrl, arrl, maxn - l, maxn - 1);
qsort(parrh, arrh, maxn - h, maxn - 1);
for(int i = maxn - h; i < maxn ; i++)
{ cout<
洛谷 P1056 排座椅
題目描述 上課的時候總會有一些同學和前後左右的人交頭接耳,這是令小學班主任十分頭疼的一件事情。不過,班主任小雪發現了一些有趣的現象,當同學們的座次確定下來之後,只有有限的d對同學上課時會交頭接耳。同學們在教室中坐成了m行n列,坐在第i行第j列的同學的位置是 i,j 為了方便同學們進出,在教室中設定了...
洛谷P1056 排座椅
上課的時候總會有一些同學和前後左右的人交頭接耳,這是令小學班主任十分頭疼的一件事情。不過,班主任小雪發現了一些有趣的現象,當同學們的座次確定下來之後,只有有限的d對同學上課時會交頭接耳。同學們在教室中坐成了m行n列,坐在第i行第j列的同學的位置是 i,j 為了方便同學們進出,在教室中設定了k條橫向的...
洛谷P1056 排座椅
先上題目鏈結 注釋寫得多,直接貼 了 include include include using namespace std intmain else if ay by for i 1 i k i 退出這個迴圈時p為分割最大的線的下標 horizontal tmp false 求出一條分割最多的線後...