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

传奇手游开服表网站网站建设 全网营销

传奇手游开服表网站,网站建设 全网营销,码云可以做博客网站吗,移动开发主要学什么目录 题目描述: 示例1 代码实现: 【华为OD】B\C卷真题 100%通过:字符串统计 C/C实现 题目描述: 给定两个字符集合,一个为全量字符集,一个为已占用字符集。已占用的字符集中的字符不能再使用,要求输出剩…

目录

题目描述:

示例1

代码实现:


【华为OD】B\C卷真题 100%通过:字符串统计 C/C++实现

题目描述:

给定两个字符集合,一个为全量字符集,一个为已占用字符集。已占用的字符集中的字符不能再使用,要求输出剩余可用字符集。

输入描述

1、输入为一个字符串,一定包含@符号。@前的为全量字符集,@后的字为已占用字符集。

2、已占用字符集中的字符一定是全量字符集中的字符。字符集中的字符跟字符之间使用英文逗号分隔。

3、每个字符都表示为字符加数字的形式,用英文冒号分隔,比如a:1,表示1个a字符。

4、字符只考虑英文字母,区分大小写,数字只考虑正整形,数量不超过100。

5、如果一个字符都没被占用,@标识仍然存在,例如a:3,b:5,c:2@

输出描述

输出可用字符集,不同的输出字符集之间回车换行。

注意,输出的字符顺序要跟输入一致。不能输出b:3,a:2,c:2

如果某个字符已全被占用,不需要再输出。

示例1

输入输出示例仅供调试,后台判题数据一般不包含示例

输入

a:3,b:5,c:2@a:1,b:2

输出

a:2,b:3,c:2

说明

全量字符集为3个a,5个b,2个c。

已占用字符集为1个a,2个b。

由于已占用字符不能再使用,因此,剩余可用字符为2个a,3个b,2个c。

因此输出a:2,b:3,c:2

代码实现:

#include <string>
#include <map>
#include <iostream>
#include <sstream>
#include <algorithm>
#include <vector>using namespace std;class SData {
public:char k;int cnt;int size;bool operator<(const SData &other) const {return size < other.size;}SData(char key = 0, int cnt = 0, int len = 0) : k(key), cnt(cnt), size(len) {}
};class Solution {public:Solution(const string &s) {int idx = s.find('@');if (idx == string::npos) {dealData(s, false);}else {dealData(s.substr(0, idx), false);dealData(s.substr(idx + 1), true);}vector<SData> tmp(m_data.size());m_vsd = tmp;for (auto &item : m_data) {m_vsd.push_back(item.second);}calc();}string out() const {return m_res;}
private:void calc() {sort(m_vsd.begin(), m_vsd.end());for (auto &e : m_vsd) {if (e.cnt > 0) {m_res.push_back(e.k);m_res.append(":").append(to_string(e.cnt)).append(",");}}m_res.pop_back();}void dealData(const string &s, bool fg) {if (s.empty()) {return;}istringstream ss(s);int size = 0, cnt;char k;while (ss >> k >> cnt) {if (fg) {m_data[k].cnt -= cnt;}else {m_data[k] = { k, cnt, size++ };}}}vector<SData> m_vsd;string m_res;map<char, SData> m_data;
};int main() {string lineStr;getline(cin, lineStr);replace_if(lineStr.begin(), lineStr.end(), [](char c) { return c == ':' || c == ','; }, ' ');Solution so(lineStr);cout << so.out() << endl;return 0;
}

http://www.rdtb.cn/news/13250.html

相关文章:

  • 快速web网站开发网站开发技术有哪些
  • 南昌网站排名优化报价seo优化就业前景
  • 可以做ppt的网站有哪些内容大连网站制作
  • 佛山 网址开发 网站制作2024年的新闻时事热点论文
  • 苹果网站用什么做的吗百度收录技术
  • 上海艺佳建设发展有限公司网站seochan是什么意思
  • 十里堡网站建设简述优化搜索引擎的方法
  • 游戏网站建设赚钱长沙百度推广排名
  • 吕梁做网站怎么在百度上做推广上首页
  • 数据库用于网站建设哪个好百度长尾关键词挖掘工具
  • 深圳宝安住房和建设局网站全达seo
  • 使用他人商标做网站搜索词网络推广方式有哪几种
  • 微慕WordPress小程序佛山网站优化服务
  • 如何建设提卡网站重庆seo网络推广
  • 宁波做亚马逊网站企业管理培训班哪个好
  • 教育网站建设的雷区seo标题优化分析范文
  • 世界知名网站百度关键词查询网站
  • 美国网站建设公司哪家好营销推广的形式包括
  • 成都大型网站建设公司google收录提交入口
  • 沙河做网站网页设计论文
  • 扫描购物网站建设营销推广有哪些公司
  • 网站如何提交给百度nba最新交易一览表
  • 网络公司品牌推广快抖霸屏乐云seo
  • 遵义网站建设哪家好?网络营销的理解
  • 网站建设收费标准服务做手机关键词快速排名软件
  • 一个网站怎么做新闻模块百度seo报价方法
  • 微信小程序自己制作seo营销推广
  • 成都 企业网站建设公司网络营销的内容主要有哪些
  • 做优惠网站多少钱培训学校怎么招生
  • 怎么用网站做调查表百度竞价推广是什么工作