「一幫一學習小組」是中小學中常見的學習組織方式,老師把學習成績靠前的學生跟學習成績靠後的學生排在一組。本題就請你編寫程式幫助老師自動完成這個分配工作,即在得到全班學生的排名後,在當前尚未分組的學生中,將名次最靠前的學生與名次最靠後的異性學生分為一組。
輸入第一行給出正偶數n
(≤50),即全班學生的人數。此後n
行,按照名次從高到低的順序給出每個學生的性別(0代表女生,1代表男生)和姓名(不超過8個英文本母的非空字串),其間以1個空格分隔。這裡保證本班男女比例是1:1,並且沒有並列名次。
每行輸出一組兩個學生的姓名,其間以1個空格分隔。名次高的學生在前,名次低的學生在後。小組的輸出順序按照前面學生的名次從高到低排列。
8
0 amy
1 tom
1 bill
0 cindy
0 maya
1 john
1 jack
0 linda
amy jack
tom linda
bill maya
cindy john
注意點:
兩個人併排輸出時,是成績好的在前,成績差的在後;
豎方向輸出順序,是成績好的人按照名次從低到高排列。
其他也沒有很多注意點,用兩個陣列分開儲存男孩女孩+乙個陣列儲存結對子情況,對後面的陣列排列好之後順序輸出即可
#include
#define inf 0x3f3f3f3f
#define pi acos(-1)
using
namespace std;
typedef
long
long ll;
const
int n =
2e5+9;
const ll mod =
1e9+7;
string girl[n]
;string boy[n]
;int g[n]
;int b[n]
;struct node
;bool
cmp(node a, node b)
node a[n]
;int
main()
else
}int cnt =0;
int gi =0;
int bi =0;
while
(bi + gi < n /2)
else
}sort
(a, a + cnt, cmp)
;for
(int i =
0; i < cnt; i++
)return0;
}
L1 030 一幫一 (15 分)
l1 030 一幫一 15 分 一幫一學習小組 是中小學中常見的學習組織方式,老師把學習成績靠前的學生跟學習成績靠後的學生排在一組。本題就請你編寫程式幫助老師自動完成這個分配工作,即在得到全班學生的排名後,在當前尚未分組的學生中,將名次最靠前的學生與名次最靠後的異性學生分為一組。輸入第一行給出正偶數...
L1 030 一幫一 15 分
一幫一學習小組 是中小學中常見的學習組織方式,老師把學習成績靠前的學生跟學習成績靠後的學生排在一組。本題就請你編寫程式幫助老師自動完成這個分配工作,即在得到全班學生的排名後,在當前尚未分組的學生中,將名次最靠前的學生與名次最靠後的異性學生分為一組。輸入格式 輸入第一行給出正偶數n 50 即全班學生的...
L1 030 一幫一 15分
一幫一學習小組 是中小學中常見的學習組織方式,老師把學習成績靠前的學生跟學習成績靠後的學生排在一組。本題就請你編寫程式幫助老師自動完成這個分配工作,即在得到全班學生的排名後,在當前尚未分組的學生中,將名次最靠前的學生與名次最靠後的異性學生分為一組。輸入格式 輸入第一行給出正偶數n 50 即全班學生的...