ABC349

A

link

其实,有人赢比赛,就有人输比赛,一加一减,不管进行多少场比赛,最后所有人的分数和一定是0
那么知道n1个人的分数和,就可以知道第n个人的了。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int n;
int sum;
int a[105];

signed main(){
	
	cin >> n;
	for(int i = 1;i < n;++ i)
		cin >> a[i],sum += a[i];
	
	cout << -1*sum;
	
	return 0;
	
}

B

link

存下来每个字母有多少个,字符串中有的字母中是i个的字母是否为02个。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

char s[105];
int n;
map<char,int> mp;
int f[30];

signed main(){
	
	cin >> s+1;
	n = strlen(s+1);
	
	for(int i = 1;i <= n;++ i)
		f[s[i]-'a'] = 1,mp[s[i]]++;
	
	for(int i = 1;i <= n;++ i){
		int g = 0;
		for(int j = 0;j < 26;++ j){
			if(f[j]){
				if(mp[j+'a'] == i) g++;
			}
		}
		if(g != 0&&g != 2){
			cout << "No";
			return 0;
		}
	}
	
	cout << "Yes";
	
	return 0;
	
}

C

link

顺着找。
先找到第一个t1,再在这个位置往后找第一个t2,然后在t2的位置往后找t3
不管从那个位置开始找不到了,都不行。
但是如果找不到t3,如果t3X,就可以不找到。

点击查看代码
#include<bits/stdc++.h>

#define int long long

using namespace std;

char s[100005];
char t[5];
int sl,tl;

signed main(){
	
	cin >> s+1 >> t;
	sl = strlen(s+1);
	
	int w = 0;
	for(int i = 1;i <= sl;++ i){
		if(s[i] == t[0]-'A'+'a'){
			w = i;
			break;
		}
	}
	
	if(w == 0){
		cout << "No";
		return 0;
	}
	
	int ww = 0;
	for(int i = w+1;i <= sl;++ i){
		if(s[i] == t[1]-'A'+'a'){
			ww = i;
			break;
		}
	}
	
	if(ww == 0){
		cout << "No";
		return 0;
	}
	
	int w3 = 0;
	for(int i = ww+1;i <= sl;++ i){
		if(s[i] == t[2]-'A'+'a'){
			w3 = i;
			break;
		}
	}
	
	if(w3 == 0&&t[2] != 'X'){
		cout << "No";
		return 0;
	}
	
	cout << "Yes";
	
	return 0;
	
} 
posted @   不认命,就是哪吒的命!  阅读(61)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示