zoukankan      html  css  js  c++  java
  • 程序设计思维与实践 Week10 限时大模拟 (3/4/数据班)

    程序设计思维与实践 Week10 限时大模拟 (3/4/数据班)

    A - 签到题

    问题分析

    根据题面,执行的操作次数在1E1000级别,隐含的意思是把全部的ST删除
    因此,不考虑执行次数,设计程序从左到右删除所有的ST即可。原字符串存到string后,遍历这个string,最终结果储存到一个栈结构中。栈空取元素入栈,不空,若栈顶是S,字符串位置是T,则弹出栈顶,继续操作。

    #include<bits/stdc++.h>
    using namespace std;
    char c[200000+5];
    int main()
    {
    //	gets(c);
    	scanf("%s",c);
    	int len=strlen(c);
    	stack<char>ans;
    	for(int i=0;i<len;++i){
    		if(ans.empty()){
    			ans.push(c[i]);
    			continue;
    		}
    		if(ans.top()=='S'&&c[i]=='T'){
    			ans.pop();
    		}
    		else{
    			ans.push(c[i]);
    		}
    	}
    	cout<<ans.size()<<endl;
    	return 0;
     } 
    
    

    B - 东东转魔方

    这个题参考了别人的解法,就不在这里写了

    参考资料链接

  • 相关阅读:
    java泛型
    跨域传递
    laravel的一些语法
    去重
    laravel的一些查询语句
    mysql把之前表单进行拆分
    Laravel5.1接收json数据
    thinkphp5 composer安装验证码
    关于地图经纬度的问题
    tp5分组查询
  • 原文地址:https://www.cnblogs.com/master-cn/p/12898935.html
Copyright © 2011-2022 走看看