目录
本文主要目的是做记录🤪🌹
小伙伴们想搜的题目可能来自这里哦……
废话不多说,直入正题:
A - AtCoder Cards
思路:
&1:把不是atcoder的卡对比
&2:是的话比较两者卡牌 相差和总@ 即可
呵呵,值得一提的是:这个第一步(捂脸)
不知道有没有人和我一样加了这段代码:
加了这段代码会多wa两点,因为题目已经说了 “默认”第一步之后了(下图)
if(a[27]==0&&b[27]==0)//不能排序
{
for(i=0;str1[i]!='\0';i++)
{
if(str1[i]-str2[i]!=0) flag=0;
}
}
代码:
#include<iostream>
using namespace std;
char str1[200005],str2[200005];
int main()//a
{
int i,flag=1,a[30]={0},b[30]={0};
cin>>str1>>str2;
for(i=0;str1[i]!='\0';i++)
{
if(str1[i]=='@') a[27]++;
else a[str1[i]-'a']++;
if(str2[i]=='@') b[27]++;
else b[str2[i]-'a']++;
}
for(i=0;i<26;i++)
{
if(a[i]!=b[i]&&i!=0&&i!=2&&i!=3&&i!=4&&i!=14&&i!=17&&i!=19) flag=0;
}
if((abs(a[0]-b[0])+abs(a[2]-b[2])+abs(a[3]-b[3])+abs(a[4]-b[4])+abs(a[14]-b[14])+abs(a[17]-b[17])+abs(a[19]-b[19]))>(a[27]+b[27])) flag=0;
if(flag) cout<<"Yes";
else cout<<"No";
return 0;
}