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

网站平台方案设计天津外贸seo推广

网站平台方案设计,天津外贸seo推广,wordpress 首页 矩阵,网站制作公司转型数据原题 1022 Digital Library - PAT (Advanced Level) Practice 题目大意 给定一本书的id、书名、作者、(多个)关键词、出版社、出版年份,根据输入的书名、作者、(其中一个)关键词、出版社、出版年份按大小顺序返回id 解题思路 先吐槽一句,题目简单是…

原题

1022 Digital Library - PAT (Advanced Level) Practice

题目大意

给定一本书的id、书名、作者、(多个)关键词、出版社、出版年份,根据输入的书名、作者、(其中一个)关键词、出版社、出版年份按大小顺序返回id

解题思路

先吐槽一句,题目简单是简单,麻烦是真麻烦...

利用哈希表来储存元素,由于可能多本书有相同的关键字,因此用vector<string>来储存答案的id。

另外,对于keywords,我们要额外进行空格分割,再分别将每一个关键词存入哈希表。

代码(c++)
#include <bits/stdc++.h>
#include <map>
#include <vector>
#include <algorithm>using namespace std;const int N = 10010;int n, m;
unordered_map<string, vector<string>> title_m;        // 书名哈希表
unordered_map<string, vector<string>> author_m;       // 作者哈希表
unordered_map<string, vector<string>> key_m;          // 关键词哈希表
unordered_map<string, vector<string>> publisher_m;    // 出版社哈希表
unordered_map<string, vector<string>> year_m;         // 年份哈希表void split(string s, unordered_map<string, vector<string>> &m, string id) {  // 根据空格分割关键词int len = 0;for(int i = 0; i < s.size(); i++) {if(s[i] == ' ') {string str = s.substr(i - len, len);m[str].push_back(id);len = -1;                            // len为-1因为马上下面就要+1了}len++;}string str = s.substr(s.size() - len);m[str].push_back(id);
}bool find_id(const string& search, const unordered_map<string, vector<string>>& m) {auto it = m.find(search); if (it != m.end())                            // 找到,排序输出并返回truevector<string> res = it->second;  sort(res.begin(), res.end());for (string id : res) cout << id << endl;return true;                    }return false;
}int main() {string sn;getline(cin, sn);                                    // 此处用getline读入,防止有其他空格n = atoi(sn.c_str());for(int i = 0; i < n; i++) {string id, title, author, key, publisher, year;getline(cin, id);getline(cin, title);getline(cin, author);getline(cin, key);getline(cin, publisher);getline(cin, year);title_m[title].push_back(id);author_m[author].push_back(id);publisher_m[publisher].push_back(id);split(key, key_m, id);year_m[year].push_back(id);}string sm;getline(cin, sm);m = atoi(sm.c_str());vector<string> ans;for (int i = 0; i < m; i++) {string search_id;getline(cin, search_id);cout << search_id << endl;string search = search_id.substr(3, search_id.size() - 3);  // 注意输入的search是带id的,先去掉if (find_id(search, title_m)) continue;if (find_id(search, author_m)) continue;if (find_id(search, key_m)) continue;if (find_id(search, publisher_m)) continue;if (find_id(search, year_m)) continue;cout << "Not Found" << endl;}
}

http://www.dtcms.com/wzjs/54966.html

相关文章:

  • 021新手学做网站广告投放是做什么的
  • wordpress模板获取数据库seo投放
  • WordPress集成插件seo关键词优化的技巧
  • 简要描述创建商务站点的商务重庆seo黄智
  • 企业网络搭建案例重庆网站seo技术
  • 专业做熟女的网站网页设计大作业
  • 京东的网站是哪家公司做的收录网站有哪些
  • 泰安定制网站建设公司百度关键词的费用是多少
  • 做外贸用哪个网站好seo上海公司
  • 安徽seo百度seo排名工具
  • 网站建设cms系统简述企业网站如何推广
  • 武汉网站开发whaa官网seo怎么做
  • 手表网网站网络推广方法
  • 成都市自住房建设网站市场营销策划书
  • 网站icon图标怎么加个人博客网站
  • wordpress中文企业主题 下载地址武汉网站seo公司
  • 做网站的是什么工程师优化seo
  • 网站优化 代码5188关键词平台
  • 营销网站建设规划兴安盟新百度县seo快速排名
  • 销售管理软件新技术seo新手教程
  • 14版哥斯拉的官方做的宣传网站软文推送
  • 快速搭建网站模板 下载北京网站优化平台
  • 广州城乡建设局和住建局官网seo也成搜索引擎优化
  • 市场调查 网站建设站长工具爱站网
  • php网站开发实战教程青岛网站seo公司
  • 模板网站建设教程视频泰安短视频seo
  • 做网站公司cnfg企业网站制作费用
  • 在信息发布网站建设外链什么平台可以免费推广产品
  • 网站开发询价表模板下载常见的网络推广方式有哪些
  • 个人做排行网站seo优化一般包括哪些内容