CF861D
题目链接:http://codeforces.com/contest/861/problem/D
解题思路:
优雅的暴力。
对于输入的每一个号码,从短到长找出它的所有子串,用 vector 保存每个号码对应的所有子串,用 map 为所有子串做标记,输出答案的时候只需要按输入顺序遍历每个号码,遍历它保存在 vector 里面的所有子串,找出可行解即可。
AC代码:
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = +;
const int inf = 0x7fffffff;
map<string,int> num_p;
string num;
vector<string> subnum[maxn];
int main(){
ios::sync_with_stdio(false);
int n;
bool can;
cin>>n;
for(int t=;t<=n;t++){
cin>>num;
for(int i=;i<=;i++){
for(int j=;j<=-i;j++){
string temp=num.substr(j,i);
if(num_p[temp]==){
num_p[temp]=t;
subnum[t].push_back(temp);
}
else if(num_p[temp]!=t) num_p[temp]=-; //有多个号码有这个子串,-1表示不可用
}
}
}
for(int t=;t<=n;t++){
for(int i=;i<subnum[t].size();i++){
if(num_p[subnum[t][i]]==t){
cout<<subnum[t][i]<<endl;
break;
}
}
} return ;
}
CF861D的更多相关文章
- cf861D 字典树+时间戳
好久没碰字典树之类的题了,搞起来有点生疏 /* 把所有母串的后缀加入字典树中 然后再扫一次所有母串的后缀,把后缀放到字典树中查询,找到第一个访问次数为1的结点返回即可 num在计数时,同一个母串的子串 ...
随机推荐
- 联想在S规则债券市场完成了里程碑式的新债券发行
腾讯科技讯,香港,2020 年 4 月 24 日-联想集团(HKSE:992)(ADR:LNVGY)今日宣布,在S规则债券市场上成功发行了里程碑式的 6.5 亿美元债券. 这些债券吸引了全球大量固定收 ...
- 飞机大战-面向对象-pygame
飞机大战 最近学习了python的面向对象,对面向对象的理解不是很深刻. 面向对象是数据和函数的'打包整理',将相关数据和处理数据的方法集中在一个地方,方便使用和管理. 本着学习的目的,在网上找了这个 ...
- codeforce 1311E. Construct the Binary Tree (构造,就是个模拟)
ACM思维题训练集合 You are given two integers n and d. You need to construct a rooted binary tree consisting ...
- 图论--网络流--最大流 洛谷P4722(hlpp)
题目描述 给定 nn 个点,mm 条有向边,给定每条边的容量,求从点 ss 到点 tt 的最大流. 输入格式 第一行包含四个正整数nn.mm.ss.tt,用空格分隔,分别表示点的个数.有向边的个数.源 ...
- POJ 1330 Nearest Common Ancestors(裸LCA)
Nearest Common Ancestors Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 39596 Accept ...
- Java通过反射技术动态创建对象(有参、无参构造)
实现类: package com.ljy; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTarge ...
- B. Heaters 思维题 贪心 区间覆盖
B. Heaters 这个题目虽然只有1500的分数,但是我还是感觉挺思维的,我今天没有写出来,然后看了一下题解 很少做这种区间覆盖的题目,也不是很擅长,接下来讲讲我看完题解后的思路. 题目大意是:给 ...
- E. A Simple Task
E. A Simple Task 这个题目的意思是 给你一个由小写字母组成的字符串,有两种操作 i j k 如果k==1 那么就是就把i 到 j 的这个区间非递减排序. i j k如果k==2 那么就 ...
- Nginx+Uwsgi+Django 项目部署到服务器。
首先先说一下思路: 1.本地django项目打包 主要用到的是 python自带的distutils.core 下的 setup,具体代码在下面,主要讲的两个问题是package主要打包为和目录同级的 ...
- Git 中 “fatal: Not a valid object name: 'master'.”
报错: fatal: Not a valid object name: 'master'. 问题主要是,master并不合法,也就是没有 git commit -m "" 提交一个 ...