当前位置:网站首页>Résultats D - exam de Qinhuangdao au cours des 20 dernières années
Résultats D - exam de Qinhuangdao au cours des 20 dernières années
2022-06-29 04:39:00 【Int i】
Le professeur Alex prépare son examen pour ses étudiants.
SerannLes étudiants qui ont passé cet examen.Si un étudiantiiAvoir un bon état d'esprit,Il est/Elle fera du bon travail et gagneraa_iaiPoints.Sinon,Il est/Elle aura l'aéroport international de PékinbiPoints.Il est donc impossible de prévoir les résultats de l'examen.Supposons que la note maximale de ces étudiants soitxxPoints.Les élèves dont les notes ne sont pas inférieures àx \cdot p\%x⋅p%Je passerai l'examen.
AlexIl faut savoir quel est le nombre maximum d'étudiants qui peuvent réussir l'examen dans tous les cas.Pouvez - vous répondre à sa question?
Contributions
La première ligne saisie indique le nombre de cas d'essai,T\ (1Une fois10^3)T (1≤T≤5×103). TTLes cas d'essai sont les suivants:.
Pour chaque cas d'essai,La première ligne contient deux entiersn \(1 \ le n \ le 2 \Une fois10^5)n (1≤n≤2×105)Etp\ (1 \le p \le 100)p (1≤p≤100),Où est - il?nnC'est le nombre d'étudiantsp\%p%C'est l'échelle.
Chacun des éléments suivantsnnlinesContient deux entiers10^9Université d'Arlesai,bi (1≤bi≤ai≤109),Scores représentatifs des élèvesii.
TotalnnDans tous les cas d'essai,Pas plus de5Une fois10^55×105.
Produits
Pour chaque cas d'essai,La ligne de sortie contient“CAS#x: y“,Où?\texttt{x}xEst le numéro de cas d'essai(De11),Et\texttt{y}yEst le nombre maximum d'étudiants.
Échantillons1
| Entrée de la réplication | Copie de sortie |
|---|---|
2 2 50 2 1 5 1 5 60 8 5 9 3 14 2 10 8 7 6 | Case #1: 2 Case #2: 4 |
Titre:n Un étudiant a une meilleure note , Ou un score inférieur . Pas moins que la note maximale *(m/100)Le plus grand nombre
Idées: Regardez les autres prendre des règles , Différence quoi , Mais je ne comprends pas , Heureusement que mon code est passé
Personnellement, je pense que c'est mieux compris .
Trier d'abord la structure , Selon les notes élevées ( Même chose pour les notes basses et élevées )Trier, Le deuxième exemple est le suivant
struct Node
{
int x,y;
bool operator<(const Node temp)const{
if(x!=temp.x) return x>temp.x;
return y>temp.y;
}
}x[M];14 2 10 8 9 3 8 5 7 6
Si la dernière valeur maximale est 14, Alors tout le reste doit être le plus grand , Recherche binaire combien de tableaux ascendants ne sont pas inférieurs à 14*(60/100.0)C'est simple
Si la dernière valeur maximale est 10, Donc ce qui est en dessous doit être le plus grand ,Le premier n'est pas14,Ça doit être2,Parce que14S'il existe10 Ce ne sera pas le plus grand .Alors la réponse est Voici la plus grande réponse + La plus petite réponse ci - dessus .Parce que La plus petite réponse ci - dessus Il n'y a pas d'ordre., Et la file d'attente prioritaire ne peut pas faire de recherche binaire ,Peut être utilisévectorAjouter+Recherche binaire, Les deux premières fonctions du code ci - dessous sont .
Et pour les données :
2 50 100 80 7 6
7Et6 Ce ne sera jamais le maximum , Réaliser cet arrêt Il suffit d'enregistrer le plus grand yPourmaxxy,if(x[i].x<maxxy) break;C'est tout.
Attention au plus gros maxxy C'est peut - être le plus grand , Il faut enfin recalculer les résultats ,Par exemple,100 80,7 6Ces données,maxxy=80.
#include<bits/stdc++.h>
using namespace std;
#define fo(a,b) for(int i=a;i<=b;i++)
#define inf 0x3f3f3f3f
#define ll long long
const ll mod=998244353;
#define EXP 1e-6
#define M 1000005
int T,n,m,maxxy;
int a[M];
struct Node
{
int x,y;
bool operator<(const Node temp)const{
if(x!=temp.x) return x>temp.x;
return y>temp.y;
}
}x[M];
vector<int>s;
void update(int q){ // Joignez - vous en temps de file d'attente prioritaire
maxxy=max(maxxy,q);
vector<int>::iterator last=lower_bound(s.begin(),s.end(),q);
s.insert(last,q);
}
int solve(double a){ //Recherche binaire
if(s.size()==0) return 0;
return lower_bound(s.begin(),s.end(),a)-s.begin();
}
signed main()
{
scanf("%d",&T);
for(int k=1;k<=T;k++){
int maxx=0;
maxxy=0;
s.clear();
scanf("%d%d",&n,&m);
fo(1,n) scanf("%d%d",&x[i].x,&x[i].y);
sort(x+1,x+n+1);
fo(1,n) a[i]=x[n-i+1].x;
for(int i=1;i<=n;i++){
if(x[i].x<maxxy) break; // Si la note supérieure ne peut pas être la valeur maximale
double r=x[i].x*(m/100.0);
int sum=(n-i)-(lower_bound(a+1,a+n+1-i,r)-a)+2; //En bas.
sum+=i-solve(r)-1; //Au - dessus
maxx=max(maxx,sum);
update(x[i].y);
}
double r=maxxy*(m/100.0);
int sum=0;
for(int i=1;i<=n;i++){ //maxxy Réponse au maximum
sum+=(x[i].x>maxxy?(x[i].y>=r):(x[i].x>=r));
}
maxx=max(maxx,sum);
printf("Case #%d: %d\n",k,maxx);
}
return 0;
}
/*
Quelques données sujettes aux erreurs :
1
3 50
100 6
5 4
6 4
:3
1
2 50
5 5
2 2
:2
1
3 50
100 6
5 4
5 4
:3
*/
边栏推荐
- Airflow2.2.3 + efficiency + MySQL 8 build a robust distributed scheduling cluster
- [code random entry - hash table] T15, sum of three numbers - double pointer + sort
- Hantai oscilloscope software | Hantai oscilloscope upper computer software ns-scope, add measurement data arbitrarily
- ROS TF coordinate transformation Library & rewrite to create high frequency coordinate transformation broadcaster
- 【代码随想录-动态规划】最长公共子序列
- Talking about Canary deployment
- Path and LD_ LIBRARY_ Example of path usage
- Blue Bridge Cup DFS (I)
- CTO and programmer were both sentenced because the crawler was out of control!
- Composite pattern
猜你喜欢

What are the basic usage methods of MySQL

What are the MySQL database constraint types

Hantai oscilloscope software | Hantai oscilloscope upper computer software ns-scope, add measurement data arbitrarily

be based on. NETCORE development blog project starblog - (13) add friendship link function

What are the circular statements of MySQL

Analysis of moudo Network Library

The subnet of the pool cannot be overlapped with that of other pools.

LabVIEW displays Unicode characters

How to quickly install MySQL 5.7.17 under CentOS 6.5

LabVIEW显示Unicode字符
随机推荐
How to use the select statement of MySQL
从零到一,教你搭建「以文搜图」搜索服务(一)
Remediation for Unsafe Cryptographic Encryption
Hi, my technology forum is online!
泰克DPO4104数字荧光示波器技术参数
Sword finger offer II 040 Largest rectangle in matrix
From zero to one, I will teach you to build a "search by text and map" search service (I)
Remediation for Unsafe Cryptographic Encryption
Research Report on the overall scale, major manufacturers, major regions, product and application segmentation of GSM and GPRS modules in the global market in 2022
Quelles sont les méthodes de simulation et de gravure des programmes? (comprend les outils communs et la façon dont ils sont utilisés)
Mysql 中的 mvcc原理
Research Report on the overall scale, major manufacturers, major regions, products and application segments of semiconductor wafer metal stripping platform in the global market in 2022
Research Report on the overall scale, major manufacturers, major regions, products and applications of semiconductor CMP wafer fixed ring in the global market in 2022
How to test electronic components with a multimeter
【代码随想录-哈希表】T15、三数之和-双指针+排序
Actual combat! Another opening method of magic modified swagger and knife4j
Hot renewal process
Research Report on the overall scale, major manufacturers, major regions, product and application segmentation of disposable hearing aid batteries in the global market in 2022
网传广东一名学生3次考上北大,3年共赚200万元奖金
Force deduction solution summary 324- swing sequencing II