PAT B 1038 (C ++) - 긴 브러시 형의 제목 경로

학생들의 성취도 (20 점)와 1038 개 통계
이 질문은 N 결과를 읽고 학생들에게 요구는, 출력의 특정 부분에 학생의 특정 번호를 받게됩니다.

입력 형식 :
입력 N 첫번째 라인은 양의 정수, 즉, 학생의 총 수없는 더 이상 5 ^ 10보다 준다. 그런 다음 공백으로 구분 정수 백분위 N 라인 학생의 점수를 부여. 질의 K의 마지막 행 (N을 초과하지 않는 양의 정수)에 부여 된 번호 점수는 공간에 의해 분리 된 K 분획 하였다.

출력 형식 :
질의 시퀀스 주어진 행에서의 공간에 의해 분리 된 특정 부분을 처치 한 학생의 수와 동일하지만, 라인의 끝에 추가 공간이 없을 수있다.

시료 입력 :
10
60 75 90 55 99 82 90 75 50 75
3 75 90 88.

출력 샘플 :
320

#include<iostream>
#include<algorithm>
#include<map>
using namespace  std;
int main(){
	int num = 0,num2=0;
	cin >> num;
	int number[100001];
	int k[100001];
	map<int, size_t> grade;
	for (int i = 0; i < num; i++){
		cin >> number[i];
		++grade[number[i]];
	}
	cin >> num2;
	for (int i = 0; i < num2; i++){
		cin >> k[i];
	}
	for (int i = 0; i < num2; i++){
		if (i != num2 - 1){
			cout << grade[k[i]] << " ";
		}
		else{
			cout << grade[k[i]] << endl;
		}
	}
	return 0;
}
게시 46 개 원래 기사 · 원의 칭찬 0 · 조회수 584

추천

출처blog.csdn.net/qq_23079139/article/details/104101397