功能:
- 输入一个数N和一个数M,把N人分成M个人的小组。 -
效果图:
实现原理:
- 简单的rand函数的调用。
源代码:
#include
#include
#include
#include
#include
#include
#include
using namespace std;
set<int> check;
vector<int> store;
int n, m;
int rand_num()
{
int t;
while(1)
{
t = rand()%n;
if (check.count(t) == 0)
{
check.insert(t);
store.push_back(t);
return t;
}
}
}
int main()
{
srand((unsigned) time(NULL));
while (cin >> n >> m)
{
store.clear();
check.clear();
for (int i = 0; i < n; i++)
{
rand_num();
}
int cnt = 0;
for (int i = 0; i < n; i++)
{
if (i % m == 0)
{
cout << endl << "Group#";
printf("%-5d", ++cnt);
}
printf("%5d", store[i]+1);
}
cout << endl << endl;
}
}
PS:
老师当初让现场敲得代码,还直播了下233,各种紧张各种bug,rand函数也忘记怎么用了,幸好之前写2048用过一次而且贴了出来……