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

二进制王国(蓝桥杯备赛)【sort/cmp的灵活应用】

二进制王国

题目链接

https://www.lanqiao.cn/problems/17035/learning/?contest_id=177

题目描述

在这里插入图片描述

思路

这里就要灵活理解字典序排列,虽然string内置可以直接比较字符串字典序,但是在拼接时比较特殊,比如
11的字典序小于110,但是11110排列大于11011,不可以偏概全,故我们可以想到换种比较方式,用拼接的结果来比较:

按照正常sort的逻辑,加以修改,比较s1 + s2 所得的字典序和 s2 + s1所得的字典序,重构sort函数,具体如下

#include <iostream>
#include <algorithm>
using namespace std;
const int N = 2e5 + 10;
bool cmp(string &s1, string &s2) {	//重构比较函数return s1 + s2 < s2 + s1;
}
int main() {int n;cin >> n;vector<string> s(n + 1);	//这里防止题目所给数据空间开爆,用变长数组for(int i = 0; i < n; i++)	cin >> s[i];sort(s.begin(), s.end(), cmp);for(auto str : s)cout << str;return 0;
}
http://www.lryc.cn/news/324249.html

相关文章:

  • 活用C语言之宏定义应用大全
  • 【源码】I.MX6ULL移植OpenCV
  • pytorch深度学习——dataset(附数据集下载)
  • springboot+vue考试管理系统
  • 自动驾驶建图--道路边缘生成方案探讨
  • 图片编辑器中实现文件上传的三种方式和二进制流及文件头校验文件类型
  • 深度学习,CRNN+CTC和Attention OCR你更青睐哪一种?
  • 飞桨AI应用@riscv OpenKylin
  • 在MongoDB建模1对N关系的基本方法
  • C++基础之运算符重载(十一)
  • 初始Java篇(JavaSE基础语法)(2)(逻辑控制)
  • 家用路由器和企业路由器的区别?
  • Gin简介(Go web基础知识)
  • HBase的Bulk Load流程
  • vue中图片替换 遇到问题
  • Android 观察者模式
  • 阿里云部署MySQL、Redis、RocketMQ、Nacos集群
  • day05-店铺营业状态设置
  • 哈希表(c++)
  • C#基础-标识符命名规则
  • Zabbix Web界面中文汉化
  • esp32CAM环境搭建(arduino+MicroPython+thonny+固件)
  • Spring Boot从入门到实战
  • Spring Boot(七十一):整合RateLimiter实现接口限流
  • 通过jsDelivr实现Github的图床CDN加速
  • Kafka系列之:Connect 中的错误报告
  • MySQL面试题--开发(最全,涵盖SQL基础、架构、事务)
  • 【移动端】Flutter 获取Android AMap实例
  • 什么是PLC物联网关?PLC物联网关有哪些功能?
  • R-CNN笔记