90 出现次数最多的整数(水题、细节)

【思路】:题目已经说明是按大小的顺序输入的,所以直接判断与前一个是否相等就行。注意:题目有一个条件没说清楚(或者是因为乱码),N是小于20的,,所以有可能是负数。

【AC代码】:

#include <iostream>#include <algorithm>#include <iomanip>#include <cstdio>#include <cstring>using namespace std;#define MAX 20+5struct Num{int data;int t;};int main(){freopen("in.txt", "r", stdin);int n = 0, i = 0, cnt = 1;Num num[MAX]={0};//inputcin >> n;if (n > 0){cin >> num[0].data;num[0].t = 1;}for (i = 1; i < n; i++){int temp = 0;cin >> temp;if (temp == num[cnt-1].data)num[cnt-1].t++;else{num[cnt].data = temp;num[cnt].t++;cnt++;}}//outputint max_t = 0, pos = 0;for (i = 0; i < cnt; i++){if (num[i].t > max_t){max_t = num[i].t;pos = i;}}if (n > 0)cout << num[pos].data;}

蚁穴虽小,溃之千里。

90 出现次数最多的整数(水题、细节)

相关文章:

你感兴趣的文章:

标签云: