国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

1085. Perfect Sequence (25)

2019-11-08 03:07:53
字體:
來源:轉載
供稿:網友

1. 原題: https://www.patest.cn/contests/pat-a-PRactise/1085

2. 思路:

題意:給定一個序列,找出序列中兩個元素m和M之間的滿足M<= m*p關系的元素個數最大值。思路:排序邏輯題。先升序排序,然后利用動態規劃的思想遍歷即可。即,假設起點第i個位置,i~j之間都滿足,j+1不符合。那么求出此時元素個數,i++繼續循環處理。注意用long long int.已AC。

3. 源碼

#include<iostream>#include<algorithm>//使用sort函數#include<vector>using namespace std;typedef long long int lint;int main(void){	//freopen("in.txt", "r", stdin);	lint N, p;	cin >> N >> p;	vector<lint> seq(N);//存儲元素	for (int i = 0; i < N; i++)		cin >> seq[i];	sort(seq.begin(), seq.end());//升序	int m = 0, num;//分別為起始位置, 元素個數	int M = 0, cnt = 0;//分別為終點位置, 最大個數	while (m < N)//循環	{		lint range = seq[m] * p;//滿足條件的元素最大值		while (M < N && seq[M] <= range)			M++;		num = M - m;		cnt = max(cnt, num);//更新最大個數		if (M == N)//已到序列末尾,跳出			break;		else			m++;	}	cout << cnt << endl;	return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五大连池市| 策勒县| 长寿区| 罗江县| 城市| 攀枝花市| 临沧市| 洛隆县| 汤原县| 永顺县| 桑植县| 长垣县| 通州市| 南平市| 驻马店市| 和硕县| 顺义区| 彭阳县| 临潭县| 隆子县| 富裕县| 巴塘县| 阿巴嘎旗| 怀集县| 罗甸县| 平乡县| 孟州市| 宿州市| 望奎县| 台山市| 平远县| 恩平市| 都昌县| 扬州市| 博野县| 沐川县| 永康市| 鲁山县| 武宁县| 九龙坡区| 武陟县|