zoukankan      html  css  js  c++  java
  • 1085. Perfect Sequence (25)

    Given a sequence of positive integers and another positive integer p. The sequence is said to be a "perfect sequence" if M <= m * p where M and m are the maximum and minimum numbers in the sequence, respectively.

    Now given a sequence and a parameter p, you are supposed to find from the sequence as many numbers as possible to form a perfect subsequence.

    Input Specification:

    Each input file contains one test case. For each case, the first line contains two positive integers N and p, where N (<= 105) is the number of integers in the sequence, and p (<= 109) is the parameter. In the second line there are N positive integers, each is no greater than 109.

    Output Specification:

    For each test case, print in one line the maximum number of integers that can be chosen to form a perfect subsequence.

    Sample Input:

    10 8
    2 3 20 4 5 1 6 7 8 9
    

    Sample Output:

    8

    #include<iostream>
    #include<vector>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    int main(){
    	int n,p;
    	scanf("%d%d",&n,&p);
    	vector<long>vt;
    	int i,j,val;
    	for(i=0;i<n;i++){
    		scanf("%ld",&val);
    		vt.push_back(val);
    	}
    	sort(vt.begin(),vt.end());
    	int left=1,right=0;
    	int length=0;
    	int len=0;
    	for(i=0;i<n;i++){
    		long tmp = p*vt[i];
    		if(tmp>=vt[n-1]){
    			if(len < n-i){
    				len=n-i;
    			}
    			break;
    		}
    		int right=n-1;
    		while(right>left){
    			int mid=(right+left)/2;
    			if(vt[mid]>tmp){
    				right=mid;
    			}else if(vt[mid]<tmp){
    				left=mid+1;
    			}else {
    				left=mid+1;
    				break;
    			}
    		}
    		if(left-i>len){
    			len=left-i;
    		}
    	}
    	printf("%d
    ",len);
    	return 0;
    } 
    

      





  • 相关阅读:
    石头汤
    win8激活 DNS名称不存在
    IE系列hack
    CSS缩写
    MSDN资源
    项目管理之软件文档知多少
    jqModal
    Microsoft Security Essentials 不升级方法
    XP没有声音服务解决方案
    office2003安全模式启动,默认模板问题/打开word就显示“无法装载这个对象”
  • 原文地址:https://www.cnblogs.com/grglym/p/8047295.html
Copyright © 2011-2022 走看看