some programs!!
This commit is contained in:
1 parent
ed054247d5
commit
71f1022dea
38 files changed
+1037
-281
No files matched your search
@@ -0,0 +1,50 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main() {
|
||||
long long T; //注意变量都要初始化 ,T为数组个数
|
||||
scanf("%lld", &T); //数组个数,决定过程要执行多少次
|
||||
for (int i = 0; i < T; i++) {
|
||||
long long n, m, bianhao, yushu, max = -1, index; //注意变量都要初始化,n为包裹个数,m为箱子个数,result是余数,max是装的最多
|
||||
//以上变量必须定义在循环里,因为一组过后所有数据要重新开始!要不然max,index值未清除!
|
||||
scanf("%lld%lld", &n, &m); //键入包裹的个数和箱子的个数
|
||||
long long Amount[m], number[n]; //Amount是定义对应的箱子里装几个 ,number是用数组记录包裹的“编号”
|
||||
//禁止写错数组个数!
|
||||
for (int j = 0; j < m; j++) //初始化箱子数组 ,注意数组是m个
|
||||
{
|
||||
Amount[j] = 0;
|
||||
}
|
||||
for (int k = 0; k < n; k++) //把包裹赋值,记录到number里 注意数组是n个
|
||||
{
|
||||
scanf("%lld", &bianhao);
|
||||
number[k] = bianhao;
|
||||
}
|
||||
for (int s = 0; s < n; s++) //进行mol m运算,余数计入number里
|
||||
{
|
||||
yushu = number[s] % m;
|
||||
Amount[yushu] = Amount[yushu] + 1;
|
||||
}
|
||||
for (int t = 0; t < m; t++) //此循环计算哪个箱子装的最多
|
||||
{
|
||||
//max=-1;错误 在循环里定义会导致max每走一个t都会被重置!
|
||||
if (max < Amount[t]) {
|
||||
max = Amount[t];
|
||||
}
|
||||
}
|
||||
for (int u = 0; u < m; u++) //此循环寻找下标
|
||||
{
|
||||
if (Amount[u] == max) {
|
||||
index = u;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for (int v = 0; v < m; v++) //此循环输出amount数组里各个元素的大小
|
||||
{
|
||||
printf("%lld ", Amount[v]);
|
||||
}
|
||||
printf("\n");
|
||||
printf("%lld %lld", index, max);
|
||||
printf("\n");
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user