AcWing 4672. 布料排序
原题链接
简单
作者:
笔尖微凉_7
,
2024-03-03 22:11:12
,
所有人可见
,
阅读 14
#include <bits/stdc++.h>
using namespace std;
struct cloths{
string color;
int level;
int id;
};
const int N=1001;
cloths clo1[N];
cloths clo2[N];
bool comp1(cloths x , cloths y){
if(x.color != y.color) return x.color < y.color;
return x.id < y.id;
}
bool comp2(cloths x , cloths y){
if(x.level != y.level) return x.level < y.level;
return x.id < y.id;
}
int main(){
int n,m;
cin >> n;
for(int i = 0 ; i < n ; i++){
cin >> m ;
int res=0;
for(int j = 0 ; j < m ; j++){
cin >> clo1[j].color >> clo1[j].level >> clo1[j].id;
clo2[j].color=clo1[j].color;
clo2[j].level=clo1[j].level;
clo2[j].id=clo1[j].id;
}
sort(clo1,clo1+m,comp1);
sort(clo2,clo2+m,comp2);
for(int k = 0 ; k < m ; k++){
if(clo1[k].color==clo2[k].color && clo1[k].level==clo2[k].level && clo1[k].id==clo2[k].id)
res++;
}
printf("Case #%d: %d\n",i+1,res);
}
return 0;
}