问题标题: 酷町堂:1772急

0
0
已解决
李锦昊
李锦昊
中级天翼
中级天翼

80:

#include<bits/stdc++.h>
using namespace std;
long long n,m,a[200005],cnt;
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
	}
	sort(a+1,a+n+1);
	for(int i=1;i<=n;i++){
        for(int j=i+1;j<=n;j++){
            if(a[j]-a[i]==m){
                cnt++;
            }
        }
    }
    cout<<cnt;
	return 0;
}

 

李锦昊在2021-10-09 17:44:13追加了内容

对不起,发错题目了

李锦昊在2021-10-09 17:44:26追加了内容

对不起,发错题目了


0
0
李显晨
李显晨
中级启示者
中级启示者

要用结构体啊

函数:
struct game{
    string name;
    string score;
}a[500];
int n;
int cmp(game a,game b){
    if(a.score.size()!=b.score.size()) return a.score.size()>b.score.size();
    if(a.score!=b.score) return a.score>b.score;
    if(a.name!=b.name) return a.name<b.name;
    return 1;
}
主函数:
cin>>n;
for(int i=0;i<n;i++) cin>>a[i].name>>a[i].score;
sort(a+0,a+n,cmp);
for(int i=0;i<n;i++) cout<<a[i].name<<endl;

 

0
曹博扬
曹博扬
初级天翼
初级天翼

你发错题了

曹博扬在2021-10-09 21:20:28追加了内容

你的思路不对

给你一个思路

b[a[i]]++
这是桶,输入时搞定,注意,桶要定义大两倍

for(int i=1;i<=n;i++)
	ans+=b[a[i]+c];
我要回答