1102. スーパーチャンピオンシップペーパーの指導 (20 ポイント)

「教育スーパーマーケット」は、パズル A システムの派生製品であり、ユーザーが購入できるさまざまなテスト問題や演習を公開しています。試験用紙の一覧には、各試験用紙の単価だけでなく、現在の購入者数も表示されます。この問題では、この情報に基づいて、教育スーパーマーケットのすべてのテスト用紙の売上 (つまり購入数) のチャンピオンと売上のチャンピオンを見つけるように求められます。

入力形式:

まず最初の行に正の整数 N (≤104) を入力し、続いて N 行を入力します。各行には用紙の一意の ID (小文字と数字で構成され、長さが 8 桁を超えない文字列) が与えられます。 、単価(100 を超えない正の整数)および購入数(106 を超えない非負の整数)。

出力フォーマット:

1行目に売上チャンピオンのIDと売上を出力し、2行目に売上チャンピオンのIDと売上を出力します。出力行はスペースで区切られます。タイトルは、チャンピオンが唯一無二であり、同点ではないことを保証します。

入力サンプル:

4
zju007 39 10
pku2019 9 332
pat2018 95 79
qdu106 19 38

出力例:

pku2019 332
pat2018 7505

0に初期化しないように注意してください。販売数量が0になるか、以上で判断できます...ピットを踏む

#include<cstdio>
#include<set>
#include<map>
#include<cmath> 
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;

int main(){
	string name;
	int price,num,N;
	string saleNumMax,saleTotalMax;
	int numMax=-1,totalMax=-1;
	cin>>N;
	while(N--){
		cin>>name>>price>>num;
		if(num>numMax){
			numMax = num;
			saleNumMax = name;
		}
		if(num*price>totalMax){
			totalMax = num*price;
			saleTotalMax = name;
		}
	}
	cout<<saleNumMax<<" "<<numMax<<endl;
	cout<<saleTotalMax<<" "<<totalMax<<endl;
	return 0;
}

おすすめ

転載: blog.csdn.net/qq_16382227/article/details/124042257