iT邦幫忙

DAY 28
0

學習技術筆記系列 第 22

Day28[C++]眾數和

  • 分享至 

  • xImage
  •  

解眾數和~



#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
	for (int n, sum; cin >> n; cout << sum << endl)
	{
		int *data = new int[n], *counts = new int[n], i, max;
		for (counts[i = 0] = 1; i < n; cin >> data[i++]);
		sort(data, data + n);
		
		for (i = max = 1; i < n; ++i)
		{
			counts[i] = data[i-1] == data[i] ? counts[i-1] + 1 : 1;
			if(max < counts[i])
			{
				max = counts[i];
			}
		}
		for(i = sum = 0; i < n; ++i)
		{
			if(counts[i] == max)
			{
				sum += data[i];
			}
		}
		delete data;
		delete counts;
	}
}

上一篇
Day27[C++]檢查數字的二進制表示是否為迴文
系列文
學習技術筆記22
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言