CCF-CSP题解 201912-3化学方程式【字符串处理+模拟】

奥利给!先放个题目链接

201912-3化学方程式

在这里插入图片描述在这里插入图片描述在这里插入图片描述

思路和感悟

这题真是去年参加CSP的败笔!明明已经做对了几个测试点,最后却提交了个全错的,把对的顶走了!!!每每想起,都想打自己一顿!算了,怎么能打自己呢!砸键盘吧!
今天又做了一遍,做了9个测试的的内容,但是不知道咋回事,加入数字那一块的测试点就是过不了OTZ,只得了40分······想用STL,尤其是stringstream,无奈学识实在浅薄,用不好,只会空格分割和格式转换。
然后我就参考了一位大佬的代码,真的是太妙了TAT

总结一下

#include <sstream>
using namespace std;
int main(){
   
   
	string str="4Au+8NaCN+2H2O+O2=4Na(Au(CN)2)+4NaOH";
	stringstream ss(str);
	string lstr,rstr;
	getline(ss,lstr,'=');
	cout<<lstr<<endl//4Au+8NaCN+2H2O+O2
	getline(ss,rstr);
	cout<<rstr<<endl;//4Na(Au(CN)2)+4NaOH
	
	string item;
	while(getline(rstr,item,'+'){
   
   
		cout<<item<<endl;//4Au//8NaCN//2H2O//O2
	}
	return 0;
}
/***********************************************************/
#include <cctype>
using namespace std;
int main(){
   
   
	char c1='a';
	char c2='A';
	char c3='1';
	if(islower(c1))//判断是否小写字母
	    cout<<c1<<endl;//a
	if(isupper(c2))//判断是否大写字母
	    cout<<c2<<endl;//A
	if(isdigit(c3))//判断是否数字
	    cout<<c3<<endl;//1
}
/***********************************************************/
vector向量作为常用的容器之一,某些时候很好用,
比如邻接表,有时也能代替栈和队列使用,
多做题、多总结、多学习。

测试样例

11
H2+O2=H2O
2H2+O2=2H2O
H2+Cl2=2NaCl
H2+Cl2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值