Acwing第 39 场周赛完结
Posted 辉小歌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Acwing第 39 场周赛完结相关的知识,希望对你有一定的参考价值。
目录
4302. 元素分类【签到】
https://www.acwing.com/problem/content/4305/
#include<bits/stdc++.h>
using namespace std;
int main(void)
int sum1=0,sum2=0;
int n,x; cin>>n;
while(n--)
cin>>x;
if(x>=0) sum2+=x;
else sum1+=x;
cout<<sum2-sum1;
return 0;
4303. 链表【链表】
https://www.acwing.com/problem/content/4306/
#include<bits/stdc++.h>
using namespace std;
int n;
map<string,string>mp;
map<string,vector<string>>ans;
string find(string a)
if(mp[a]=="") return a;
return mp[a];
int main(void)
cin>>n;
while(n--)
string a,b; cin>>a>>b;
if(mp[a]=="") ans[a].push_back(a);
mp[a]=find(a),mp[b]=find(a);
ans[mp[a]].push_back(b);
cout<<ans.size()<<endl;
for(auto i=ans.begin();i!=ans.end();i++)
vector<string> ve=i->second;
int cnt=ve.size()-1;
cout<<ve[0]<<" "<<ve[cnt]<<endl;
return 0;
4304. 字符串归类【并查集】
https://www.acwing.com/problem/content/4307/
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
string s[N];
int n,p[N];
int find(int x)
if(x!=p[x]) p[x]=find(p[x]);
return p[x];
int main(void)
cin>>n;
for(int i=0;i<n;i++) cin>>s[i];
for(int i=0;i<26;i++) p[i]=i;
set<int>st;
for(int i=0;i<n;i++)
st.insert(s[i][0]-'a');
for(int j=1;j<s[i].size();j++)
p[find(s[i][j]-'a')]=find(s[i][0]-'a'),st.insert(s[i][j]-'a');
map<int,int>mp;
for(auto i=st.begin();i!=st.end();i++) mp[find(*i)]++;
cout<<mp.size();
return 0;
以上是关于Acwing第 39 场周赛完结的主要内容,如果未能解决你的问题,请参考以下文章