//判断是否是连续的数
//判断是否只能第一个数是最小值
#include <cstdio>
#include <algorithm>
typedef long long ll;
using namespace std;
int n,p;
const int maxn = 100010;
int arr[maxn];int binary(int l, int r, ll tgt){if(arr[n-1] <= tgt) return n;while(l < r){int mid = (l+r) / 2;if(tgt < arr[mid]){r = mid;}else{l = mid+1;}}return l;
}
int main() {scanf("%d %d", &n, &p);for(int i = 0; i < n; i++){scanf("%d", &arr[i]);}sort(arr, arr+n);int res = 1;for(int i = 0; i < n; i++){int j = binary(i+1, n-1, (ll)arr[i]*p);res = max(res, j-i);}printf("%d\n", res);return 0;
}#双指针
//判断是否是连续的数
//判断是否只能第一个数是最小值
#include <cstdio>
#include <algorithm>
typedef long long ll;
using namespace std;
int n,p;
const int maxn = 100010;
int arr[maxn];int main() {scanf("%d %d", &n, &p);for(int i = 0; i < n; i++){scanf("%d", &arr[i]);}sort(arr, arr+n);int res = 1;int r = 0;for(int l = 0; l < n; l++){while(r < n && arr[r]<= (ll) arr[l]*p){r++;}res = max(res, r-l);}printf("%d\n", res);return 0;
}
PAT1085 Perfect Sequence(25)
2024/12/2 7:01:39
来源:https://blog.csdn.net/weixin_51735301/article/details/144078351
浏览:
次
关键词:PAT1085 Perfect Sequence(25)
版权声明:
本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com
热文排行
- 《警世贤文》摘抄:处人篇、受恩篇、宽人篇、听劝篇、劝善篇(多读书、多看报、少吃零食多睡觉)
- nccl 03 记 回顾:从下载,编译到调试 nccl-test
- Vmess协议是什么意思? VLESS与VMess有什么区别?
- 【CVE-2024-38077】核弹级Windows RCE漏洞如何自检并修复该漏洞(附批量漏洞检测工具及分析伪代码)
- 【HW必备】用友NC-Cloud存在17处漏洞合集
- windows11 ,ubuntu20.04双系统,ubuntu没有wifi的解决方式
- AD24设计步骤
- `git restore` 和 `git checkout` 用于丢弃工作区的改动, `git switch` 和 `git checkout` 用来切换分支
- ctfshow-web入门-php特性(web132-web136)
- HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号4