关注
第二题这样的,刚开始看错题目了耽误了好多时间!/(ㄒoㄒ)/~~
#include<iostream>
#include<stdio.h>
#include<string>
#include<map>
using namespace std;
map<string, int>pp;
int n,m;
void work (string s)
{
bool p=0;
int now;
if (s[0]=='a') return ;
for (int i=5;i<s.size();i++)
if (s[i]=='/')
{
p=1;
now=i;
break;
}
string ss[5];
string temp="";
int count=1;
int last;
if (!p)
{
for (int i=5;i<s.size();i++)
{
if (s[i]!='.')
temp+=s[i];
if (s[i]=='.')
{
ss[count]=temp;
temp="";
count++;
last=i;
}
}
ss[4]="";
for (int i=last+1;i<s.size();i++)
ss[4]+=s[i];
}
else
{
for (int i=5;i<s.size();i++)
{
if (s[i]!='.')
temp+=s[i];
if (s[i]=='.')
{
ss[count]=temp;
temp="";
count++;
last=i;
}
}
ss[4]="";
for (int i=last+1;i<now;i++)
ss[4]+=s[i];
}
/*cout<<s<<endl;
cout<<ss[1]<<" ";
cout<<ss[2]<<" ";
cout<<ss[3]<<" ";
cout<<ss[4]<<" "<<endl;*/
int a[9],sz,x;
sz=0;
x=0;
for (int i=0;i<ss[1].size();i++)
x=x*10+(ss[1][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[2].size();i++)
x=x*10+(ss[2][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[3].size();i++)
x=x*10+(ss[3][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[4].size();i++)
x=x*10+(ss[4][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
//cout<<temp<<endl;
//cout<<temp.size()<<endl;
string ans="";
for (int i=ss[4].size();i<temp.size();i++)
ans+=temp[i];
//cout<<ans<<endl;
//a[ans]=0;
string t="";
for (int i=0;i<=19;i++)
t+=ans[i];
pp[t]=1;
//cout<<ans<<endl;
//cout<<t<<endl;
}
void calc (string s)
{
bool p=0;
int now;
if (s[0]=='a') return ;
for (int i=0;i<s.size();i++)
if (s[i]=='/')
{
p=1;
now=i;
break;
}
string ss[5];
string temp="";
int count=1;
int last;
if (!p)
{
for (int i=0;i<s.size();i++)
{
if (s[i]!='.')
temp+=s[i];
if (s[i]=='.')
{
ss[count]=temp;
temp="";
count++;
last=i;
}
}
ss[4]="";
for (int i=last+1;i<s.size();i++)
ss[4]+=s[i];
}
else
{
for (int i=0;i<s.size();i++)
{
if (s[i]!='.')
temp+=s[i];
if (s[i]=='.')
{
ss[count]=temp;
temp="";
count++;
last=i;
}
}
ss[4]="";
for (int i=last+1;i<now;i++)
ss[4]+=s[i];
}
/*cout<<s<<endl;
cout<<ss[1]<<" ";
cout<<ss[2]<<" ";
cout<<ss[3]<<" ";
cout<<ss[4]<<" "<<endl;*/
int a[9],sz,x;
sz=0;
x=0;
for (int i=0;i<ss[1].size();i++)
x=x*10+(ss[1][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[2].size();i++)
x=x*10+(ss[2][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[3].size();i++)
x=x*10+(ss[3][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
sz=0;
x=0;
for (int i=0;i<ss[4].size();i++)
x=x*10+(ss[4][i]-'0');
while (x)
{
a[++sz]=x%2;
x=x/2;
}
if (sz<8)
{
for (int i=1;i<=8-sz;i++)
temp+="0";
}
for (int i=sz;i>=1;i--)
temp+=char(a[i]+'0');
//cout<<temp<<endl;
//cout<<temp.size()<<endl;
string ans="";
for (int i=ss[4].size();i<temp.size();i++)
ans+=temp[i];
//cout<<ans<<endl;
//a[ans]=0;
string t="";
for (int i=0;i<=19;i++)
t+=ans[i];
//cout<<t<<endl;
if (pp[t]) cout<<"NO"<<endl;
else cout<<"YES"<<endl;
}
void doing ()
{
cin>>n>>m;
getchar();
string s;
for (int i=1;i<=n;i++)
{
getline (cin,s);
work (s);
}
//cout<<"!!!!!"<<pp["00000001000000010000"];
for (int i=1;i<=m;i++)
{
cin>>s;
calc (s);
}
}
int main ()
{
doing ();
return 0;
}
查看原帖
点赞 5
相关推荐
05-30 15:13
安徽财经大学 C++ 点赞 评论 收藏
分享
程序员小白条:第二个项目就别写了.....这简历本来就是靠学历吃面试的,你要是不是92,连中小厂都没机会面试
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 简历上写了AI项目,怎么才能拉开差距?8426
- 2... 我用一场重病,换来了与大厂的和解7691
- 3... 不会AI Coding真的不行吗?5532
- 4... 字节跳动-中国交易与广告面经3373
- 5... 战报分享——2026年前端社招找工作感想1657
- 6... 字节跳动-Agent开发实习生 一面(45分钟):1434
- 7... 实习还有试用期???1404
- 8... 哈哈哈哈哈哈哈哈哈再也不用写代码啦!!1344
- 9... 学AI+测试力竭的感觉谁懂,WDF越学感觉自己越菜!1313
- 10... Claude Code 压缩机制曝光,这波真的有点猛啊!1175
正在热议
更多
# 我的实习日记 #
4173815次浏览 33325人参与
# 城市生存手册 #
9133次浏览 128人参与
# 第3届现代汽车Code Faster急速编程挑战赛 #
36206次浏览 542人参与
# 牛客AI文生图 #
26635次浏览 271人参与
# 你的房租占工资的比例是多少? #
105109次浏览 915人参与
# 如果人间有后悔药 #
13320次浏览 279人参与
# 入职第五天,你被拉进了几个工作群 #
33551次浏览 85人参与
# 柠檬微趣笔试 #
5716次浏览 68人参与
# 入职第一天,你准备什么时候下班 #
129675次浏览 531人参与
# 实习最晚的一次下班是几点 #
40657次浏览 178人参与
# 哪些公司对双非友好 #
245266次浏览 1293人参与
# 双非本科的出路是什么? #
238442次浏览 1671人参与
# 你现在的工作,是“成长”还是“消耗”? #
33863次浏览 259人参与
# 听到哪句话就代表面试稳了or挂了? #
280034次浏览 1801人参与
# 秋招感动瞬间 #
128947次浏览 572人参与
# 用一句话形容你的团队氛围 #
54078次浏览 316人参与
# 为了找工作你投递了多少公司? #
128973次浏览 802人参与
# 新凯来求职进展汇总 #
85407次浏览 197人参与
# 现在入门AI应该走哪些方向? #
36291次浏览 205人参与
# 提前批过来人的忠告 #
177496次浏览 1344人参与
# 秋招投递记录 #
433318次浏览 3332人参与
