zoukankan      html  css  js  c++  java
  • PAT1038(两个运行超时 未解决

    # include<iostream>
    # include<algorithm>
    using namespace std;
    int jishu(int a[],int N,int key)
    {
        int left = 0, right = N-1 , mid,flag=0;
        while(left<=right)
        {
            mid = left + (left + right)/2 ;
            if(key == a[mid])
            {
                flag=1 ; break;
            }
            else if(key < a[mid])
            {
                right = mid - 1;
            }
            else
            {
                left = mid + 1;
            }
        }
        int count = 0;
        if(flag==0)
        {
            return count;
        }
        else
        {
            for(int i=mid;i<N;i++)
            {
                if(a[i]==key)
                {
                    count++;
                }
                else
                {
                    break;
                }
            }
            for(int i=mid-1;i>=0;i--)
            {
                if(a[i]==key)
                {
                    count++;
                }
                else
                {
                    break;
                }
            }
            return count;
        }
    }
    int main()
    {
        int N,K,i,j;
        cin>>N;
        int a[N];
        for(i=0;i<N;i++)
        {
            cin>>a[i];
        }
        sort(a,a+N);
        cin>>K;
        int b[K];
        for(i=0;i<K;i++)
        {
            cin>>b[i];
            if(i != K-1)
            {
                cout<<jishu(a,N,b[i])<<" ";
            }
            else
            {
                cout<<jishu(a,N,b[i]);
            }
        }
        return 0;
    }

    本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出。

    输入格式:

    输入在第1行给出不超过105的正整数N,即学生总人数。随后1行给出N名学生的百分制整数成绩,中间以空格分隔。最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔。

    输出格式:

    在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格。

    输入样例:

    10
    60 75 90 55 75 99 82 90 75 50
    3 75 90 88
    

    输出样例:

    3 2 0

     

  • 相关阅读:
    基础数论--例题
    基础数论--扩展欧几里得算法
    基础数论--欧拉定理,逆元
    基础数论--快速幂
    基础数论--欧拉函数
    基础数论--约数
    数论基础--质数
    图算法--二分图的最大匹配(匈牙利算法)
    WEB/APP开发基础之旅--网页布局
    WEB/APP开发基础之旅--HTML入门2
  • 原文地址:https://www.cnblogs.com/wshyj/p/6296288.html
Copyright © 2011-2022 走看看