当前位置: 首页 > news >正文

蓝桥算法双周赛 第 19 场 小白入门赛

打开石门

只要有相连的一样字母就可以消成一个

string s;
int ans;void solve()
{cin >> s;int len = 0;for (int i = 0;i < s.size();i ++){if (s[i] == 'L') len ++;else //遇到Q{ans += (len ? 1 : 0); //消除累计的Llen = 0;ans ++;//遇到Q}}//QLLLL时,最后遇不到Q让累计的L消除,手动让它遇到Qans += (len ? 1 : 0);int tmp = 0;len = 0;for (int i = 0;i < s.size();i ++){if (s[i] == 'Q') len ++;else {tmp += (len ? 1 : 0);len = 0;tmp ++;}}	tmp += (len ? 1 : 0);cout << min(ans,tmp) << endl;
} 

青铜门上的涂鸦

敲打骷髅兵

找规律即可

1~   2~   4~    8...以此类推

||      ||     ||       ||

1    2      3      4       cout << 2^x - 1

int n;int test(int n)
{if (n == 0) return 0;int cnt = 0;while(n){n >>= 1;cnt ++;}return (1 << cnt) - 1;
}void solve()
{cin >> n;cout << test(n) << endl;	
}

净化王胖子

差分求解:将走过的每个房间之间的间隔 都+1

//差分求解:将走过的每个房间之间的间隔 都+1int n,k;
int a[N],b[N];//b[] 差分数组 范围1 ~ n - 1:有n - 1个间隔
int id[N];bool cmp(const int& x,const int& y)
{return x > y; 
}struct Node
{double l, r;bool operator< (const Node& t) const{return r < t.r;}
}Nodes[N];void solve()
{cin >> n >> k;for (int i = 1;i <= n;i ++) {cin >> a[i];id[a[i]] = i;//记录顺序}for (int i = 1;i < n;i ++){int x = id[i],y = id[i + 1];if (x < y) b[x] ++,b[y] --;else b[y] ++,b[x] --;}for (int i = 1;i <= n;i ++) b[i] += b[i - 1];// for (int i = 1;i < n;i ++) cout << b[i] << ' ';sort(b + 1,b + n,cmp); int cnt = 0;for (int i = 1;i < n;i ++){if (k > 0){k -= b[i];cnt ++;}}if (k > 0) cout << -1 << endl;else cout << cnt << endl;
}


http://www.mrgr.cn/news/52483.html

相关文章:

  • JavaScript 第18章:安全性
  • 数据库->数据类型
  • 主键 外键
  • vue项目页面白边如何解决
  • 基于Spring Boot+Vue的医疗健康的便民服务平台系统的设计与实现(协同过滤算法、实时聊天)
  • React组件传值方法
  • 基于机器学习的蘑菇毒性预测分析及应用实现
  • python 写一个监控另一个 程序中方法超时与否的服务
  • ShuffleNet通道混合轻量级网络的深入介绍和实战
  • 纯干货!一文搞懂自动化测试哪些事儿!
  • vue npm run ...时 报错-系统找不到指定的路径
  • 网络爬虫中的几种数据存储方式(上篇)
  • 删除链表的倒数第 n 个结点,删除排序链表中的重复元素 II
  • 【工具变量】上市公司企业广告支出数据(2007-2023年)
  • 基于SSM电子资源管理系统的设计
  • Java常用API
  • 电脑桌面便签怎么添加,好用便签软件怎么样?
  • D40【python 接口自动化学习】- python基础之函数
  • 天文备忘录
  • Java之集合介绍