CF432B Football Kit 题解
思路
利用桶数组储存冲突的球服,每只队伍都会比 场,如果别人的队服与自己相同,穿主队服的场数就加上冲突队伍数,穿客队服场数的计算同理。
代码
#include<bits/stdc++.h>
using namespace std;
int z[100005],c[100005],t[100005];//t为桶数组
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>z[i]>>c[i],t[z[i]]++;//主队服冲突
for(int i=1;i<=n;i++)
cout<<n+t[c[i]]-1<<" "<<n-t[c[i]]-1<<endl;
//n+t[c[i]]-1:n为必穿主队服的场数,t[c[i]]-1为冲突场数,-1是因为不能包含自己。n-t[c[i]]-1同理。
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步