A

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<bits/stdc++.h>
using namespace std;
using i64=long long;
void solve(){
int n;cin>>n;
string s="";
for(int i=1;i<=n;i++){
s+=to_string(n);
}
cout<<s;
}
int main(){
int _=1;
while(_--)solve();
return 0;
}

B

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;

int sa (char x,char y){
if(x > y) swap(x, y);
if(y-x == 1 || y-x == 4){
return 1;
}
else return 2;
}

int main() {
char a, b, c, d;
cin >> a >> b >> c >> d;

if(sa(a,b)==sa(c,d)){
cout<<"Yes"<<endl;
}
else cout<<"No"<<endl;

}

C

暴力算完去重就行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <bits/stdc++.h>
using namespace std;

int main(){
ios::sync_with_stdio(false);
cin.tie(0);

int n;
cin >> n;

long long now = 1;
vector<long long> rep;
for(int i = 0; i < 15; i++){
rep.push_back(now);
now = now * 10 + 1;
}

vector<long long> ans;
int m = rep.size();
for(int i = 0; i < m; i++){
for(int j = 0; j < m; j++){
for(int k = 0; k < m; k++){
ans.push_back(rep[i] + rep[j] + rep[k]);
}
}
}

sort(ans.begin(), ans.end());
ans.erase(unique(ans.begin(), ans.end()), ans.end());
cout << ans[n-1] << endl;
}

D

这场D比较简单

就是先建图,找到1节点最大的子树,然后用a节点所有连通节点的数量减去最大子树的大小后加1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include<bits/stdc++.h>
using namespace std;
using i64=long long;
const int N=3e5+10;
vector<int>g[N];
bool vis[N];
queue<int>q;
int bfs(int st,int k){
memset(vis,0,sizeof vis);
q.push(st);
vis[1]=1;
vis[st]=1;
k++;
while(q.size()){
int f=q.front();
q.pop();
for(auto &i:g[f]){
if(!vis[i]){
q.push(i);
k++;
vis[i]=1;
}
}
}
return k;
}
void solve(){
int n;cin>>n;
for(int i=1;i<n;i++){
int u,v;
cin>>u>>v;
g[u].push_back(v);
g[v].push_back(u);
}
if(g[1].size()==1){
cout<<"1";
return;
}
int ll=0;
int ans=0;
for(auto &i:g[1]){
int res=bfs(i,0);
ll+=res;
ans=max(ans,res);
}
cout<<ll-ans+1;
}
int main(){
int _=1;
while(_--)solve();
return 0;
}