1054. The Dominant Color (20)解题报告
2016-10-30 09:21
225 查看
方法一
方法二
#define _CRT_SECURE_NO_WARNINGS #include <cstdio> #include <cstdlib> #include <map> #include <climits> using namespace std; int main(void) { map<int, int> mp; map<int, int>::iterator it; int n, m, i, j, tmp; scanf("%d %d", &m, &n); for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { scanf("%d", &tmp); it = mp.find(tmp); if (it == mp.end()) { mp[tmp] = 1; } else { it->second++; } } } it = mp.begin(); int half = m * n / 2; while (it != mp.end()) { if (it->second >= half) { printf("%d\n", it->first); break; } it++; } return 0; }
方法二
#define _CRT_SECURE_NO_WARNINGS #include <cstdio> #include <cstdlib> #include <map> #include <climits> using namespace std; int main(void) { int n, m, i, j, tmp, cnt, num; scanf("%d %d", &m, &n); cnt = 0; num = INT_MAX; for (i = 0; i < n; i++) { for (j = 0; j < m; j++) { scanf("%d", &tmp); } if (num == tmp) { cnt++; } else { cnt--; } if (cnt <= 0) { num = tmp; cnt = 1; } } printf("%d\n", num); return 0; }
相关文章推荐
- PAT 1054. The Dominant Color (20) 找序列中某个元素出现一半以上;
- 1054. The Dominant Color (20)
- PAT (Advanced Level) 1054. The Dominant Color (20) 找过半的数,一次遍历
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- PAT (Advanced) 1054. The Dominant Color (20)
- PAT (Advanced) 1054. The Dominant Color (20)
- PAT 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- PAT 1054. The Dominant Color (20)(简单排序题(`vector<int>`利用`map<int,int>`来排序))
- 【PAT】【Advanced Level】1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- PAT 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)
- 1054. The Dominant Color (20)