2021年度训练联盟热身训练赛第二场

A Binarize It

一个for循环暴力查找即可

#include<bits/stdc++.h>
#define ll long long
using namespace std;
#define speed_up ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);

int main()
{
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
cout<<"Input value: "<<n<<endl;
for(int i=1;i<=n;i++)
{
double d=pow(2,i);
if(d>=n)
{
cout<<d<<endl<<endl;
break;
}
}
}
}

 

B g2g c u l8r

用到了map,难点在字符串的输入和输出,还要注意空格问题

#include<bits/stdc++.h>
#define ll long long
using namespace std;
#define speed_up ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);

int main()
{
int n;
cin>>n;
map<string,string>mp;//可以用string键值对
for(int i=0;i<n;i++)
{
string a,b;
cin>>a;
getchar();//把这行第一个空格吸收掉
getline(cin,b);
mp[a]=b;
}
int m;
cin>>m;
getchar();//注意这里,刚开始忽略了这里,输入有问题
for(int i=0;i<m;i++)
{
string s;
getline(cin,s);
int k=0;
for(int j=0;j<s.size();j++)
{
if(s[j]==' ')
{
string ss=s.substr(k,j-k);
if(mp.find(ss)!=mp.end())//map查找键
{
cout<<mp[ss]<<" ";
}
else cout<<ss<<" ";
k=j+1;
}
if(j==s.size()-1)
{
string ss=s.substr(k,j-k+1);//空格和末尾要分情况讨论
if(mp.find(ss)!=mp.end())
{
cout<<mp[ss];
}
else cout<<ss;
k=j+1;
}
}
cout<<endl;
}
}

 

posted @ 2021-03-14 20:19  SyrupWRLD  阅读(58)  评论(0)    收藏  举报