蓝桥杯-01小游戏

简单的模拟关键在于怎么降低时间复杂度

20%(for循环时间复杂度高)

复制代码
#include <iostream>
using namespace std;
int main()
{
  int n,q;
  cin>>n>>q;
  string s;
  cin>>s;
  int t,t1;
  while(q--)
  {
  	cin>>t;
    if(t==1)
      cout << s.find('1')+1 << endl;
  	else
  		{
		  cin>>t1;
		  if(s[t1-1]=='0')
		  s[t1-1]='1';
		  else
		  s[t1-1]='0';
		}
    }
  return 0;
}

100%

复制代码
#include <iostream>
using namespace std;
int main()
{
  int n,t;
  cin >> n >> t;
  string s;
  cin >> s;
  while(t--){
    int a;
    cin >> a;
    if(a==1){
      cout << s.find('1')+1 << endl;
    }else{
      int b;
      cin >> b;
      if(s[b-1]=='1')
        s[b-1]='0';
      else
        s[b-1]='1';
    }
  }
  return 0;
}
相关推荐
玖玥拾17 分钟前
C/C++ 基础笔记(十四)多态与模板编程
c语言·c++·多态·模板
想吃火锅100537 分钟前
【leetcode】14.最长公共前缀js
算法·leetcode·职场和发展
Roann_seo%40 分钟前
C++文件操作完全指南:从文本读写到二进制文件处理
开发语言·c++
坚果派·白晓明2 小时前
【鸿蒙PC】SDL3 适配:AtomCode + Skills 快速集成 NAPI 测试工具
c++·华为·ai编程·harmonyos·atomcode
云絮.2 小时前
数据库操作
数据库·mysql·算法·oracle
小林ixn2 小时前
LeetCode 206. 反转链表(迭代 + 递归详解)
算法·leetcode·链表
凡人叶枫2 小时前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
凡人叶枫4 小时前
Effective C++ 条款16:成对使用 new 和 delete 时要采取相同形式
开发语言·c++·effective c++
菜鸟‍4 小时前
LeetCode 1 27 和 704 || 两数之和 移除元素 二分查找
算法·leetcode·职场和发展
不吃土豆的马铃薯4 小时前
C++ 高性能网络缓冲区 Buffer 源码解析
linux·服务器·开发语言·网络·c++