90pts WA on #3 求助
  • 板块P2037 电话号码
  • 楼主diqiuyi奶龙
  • 当前回复0
  • 已保存回复0
  • 发布时间2022/8/16 17:09
  • 上次更新2023/10/27 15:07:17
查看原帖
90pts WA on #3 求助
324666
diqiuyi奶龙楼主2022/8/16 17:09

rt

#include <bits/stdc++.h>
using namespace std;
int n,cnt,c[30]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9};
map<string,int> mp;
map<string,bool> m;
string str[100005],ans[100005];
inline int read(){
	int x=0;bool f=1;char ch=getchar();
	for(;ch>'9'||ch<'0';ch=getchar()) if(ch=='-') f=0;
	for(;ch>='0'&&ch<='9';ch=getchar()) x=(x<<3)+(x<<1)+(ch^48);
	return f?x:-x;
}
inline string stread(){
	string w="";char ch=getchar();
	for(;(ch^' ')&&(ch^'\n');ch=getchar()) 
		if(ch^'-') 
			if(ch>='0'&&ch<='9') w=w+ch;
			else w=w+char(c[ch-'A']+48);
	return w;
}
inline void print(string s){
	putchar(s[0]),putchar(s[1]),putchar(s[2]),putchar('-'),putchar(s[3]),
	putchar(s[4]),putchar(s[5]),putchar(s[6]),putchar(' ');
}
int main(){
	n=read();
	for(int i=1;i<=n;i++)
		str[i]=stread(),mp[str[i]]++;
	for(int i=1;i<=n;i++)
		if(mp[str[i]]>1&&!m[str[i]])
			ans[++cnt]=str[i],m[str[i]]=1;
	if(!cnt) return puts("No duplicates."),0;
	sort(ans+1,ans+cnt+1);
	for(int i=1;i<=cnt;i++)
		print(ans[i]),printf("%d\n",mp[ans[i]]);
	return 0;
}
2022/8/16 17:09
加载中...