PAT 1060 乙等 (爱丁顿数) c++
来源:互联网 发布:linux 运行lua文件 编辑:程序博客网 时间:2024/06/05 17:56
思路: 先将n天骑车的距离升序排序, 查找第一个满足小于等于n天的骑车距离,排序后的数组末尾开始遍历求解。
#include <iostream>#include <algorithm>using namespace std;/*另加测试用例:1. 3 1 2 32. 3 0 1 13. 5 5 5 5 6 64. 5 5 5 5 5 5*/int main(){ int n(0); //连续骑车天数 cin >> n; int *a = new int[n]; for (int i = 0; i < n; i++){ cin >> a[i]; } sort(a, a + n); /* for (int i = n - 1; i>-0; i--){ if (a[i] <= n && i>=1){ if ((n - i) == a[i-1]){ cout << a[i-1]; break; } } } */ int temp; //当汽车距离大于骑车总天数n时,肯定不满足,因此,查找 第一个小于等于n的骑车距离temp for (int i = a[n - 1]; i >= 0; i--){ if (i <= n){ temp = i; break; } } for (int i = temp; i >= 0; i--){ int num(0); for (int j = n - 1; j >= 0; j--){ if (a[j] > i){ num++; } else{ break; } } if (num >= i){ cout << i; break; } /* if (i == 1){ cout << i; break; } */ } return 0;}
0 0
- PAT 1060 乙等 (爱丁顿数) c++
- PAT 1011 乙等 (A+B和C) c++
- PAT 乙等 1001 C语言
- PAT 乙等 1002 C语言
- PAT 乙等 1003 C语言
- PAT 乙等 1004 C语言
- PAT 乙等 1005 C语言
- PAT 乙等 1006 C语言
- PAT 乙等 1007 C语言
- PAT 乙等 1008 C语言
- PAT 乙等 1009 C语言
- PAT 乙等 1010 C语言
- PAT 乙等 1011 C语言
- PAT 乙等 1012 C语言
- PAT 乙等 1013 C语言
- PAT 乙等 1014 C语言
- PAT 乙等 1015 C语言
- PAT 乙等 1016 C语言
- 原来安卓机是不用杀进程的
- 用java操作MongoDB数据库
- sass&compass重写css
- Hibernate检索方式
- 文件流FileOutputStream类
- PAT 1060 乙等 (爱丁顿数) c++
- SQLite FTS5使用小技巧
- Android应用程序启动过程源代码分析
- Jersey对返回Json数据格式的支持
- CentOS 6.5 配置IP地址的三种方法
- discuz x3.2 论坛数据迁移
- C++中this指针的用法详解
- 人工智能学习推荐(1)
- zoj 2760 How Many Shortest Path floyd+最大流+处理的技巧