PAT 乙级 1060 爱丁顿数(25)
来源:互联网 发布:公务员面试报网络班 编辑:程序博客网 时间:2024/06/06 03:58
用力戳我直达原题~
简单的贪心题目。降序。i值从最大遍历到1,当满足a[i] > i 的i值则是结果。(不能是a[i] >= i,因为题目要求是超过)
你想啊,例如遍历到i = 7时,a[7] > 7,也就是说第7天的骑车距离大于7,由于是降序,那么前6天的骑车距离肯定也大于等于a[7],那么i就是结果。
开始我还想用二分结果的方法,但由于排序用了O(nlogn),再来一个O(logn)已经没有意义,所以直接线性解决。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <bits/stdc++.h>
using namespace std;
bool cmp(const int &a,const int &b){
return
a>b;}
int main()
{
int n, i, num[100010];
scanf(
"%d"
, &n);
for
(int i = 1; i <= n; i++)
scanf(
"%d"
, num + i);
sort(num + 1, num + n + 1, cmp);
for
(i = n; i >= 1; i--)
{
if
(num[i] > i)
{
cout << i << endl;
break
;
}
}
if
(i == 0)
cout << 0 << endl;
}
阅读全文
0 0
- PAT 乙级 1060 爱丁顿数(25)
- PAT乙级1060 爱丁顿数
- PAT 乙级 1060. 爱丁顿数(25)
- PAT乙级 1060. 爱丁顿数(25)
- [PAT乙级]1060. 爱丁顿数(25)
- pat 乙级 1060. 爱丁顿数(25)
- PAT乙级1060. 爱丁顿数(25)
- PAT乙级 有几个PAT(25)
- 1060. 爱丁顿数(25)-PAT乙级真题
- PAT乙级真题1060. 爱丁顿数(25)
- 1060. 爱丁顿数(25) PAT乙级真题
- [PAT-乙级]1060.爱丁顿数
- PAT-乙级-1060
- PAT乙级1060
- 【PAT】(乙级)1015. 德才论 (25)
- 【PAT】(乙级)1020. 月饼 (25)
- PAT(乙级)1005 德才论 (25)
- PAT(乙级)1010 月饼 (25)
- PAT 乙级 1030完美序列(25)
- LeetCode:波兰表达式求值(栈)
- PAT 乙级 1065单身狗(25) 情人节做这题真的是太合适了~
- 虚拟币开发专题(第一代山寨币系统收费机制是怎样的)
- PAT 乙级 1048 数字加密(20)
- PAT 乙级 1060 爱丁顿数(25)
- 理解RESTful架构
- 最长公共子序列问题
- STL:大小写字母转换、字符转数字、char*转string(未完待续)
- 条件编译#if
- 2016-2017 ACM-ICPC CHINA-Final (慢慢做慢慢更新)
- 网络篇一---网络基础
- c/c++易错知识点整理1(c/c++程序基础)
- CCPC 2016-2017, Finals (慢慢做,慢慢更新)