pat1032Sharing (25)
来源:互联网 发布:电视控软件 编辑:程序博客网 时间:2024/06/05 06:41
题意分析:
(1)找出两个单词公共后缀的起始地址,单词以字符链表的形式存储起来,因为地址是5位整数,并且地址上的前驱后继关系唯一,因此开辟一个数组,其下标用来表示地址。因为题目给出的字母顺序是乱的,最好先用map存储链接关系。这样遍历效率会更高。遍历地址,并置数组相应的位置为1,当便利第二个单词的时候,当访问到此地址已经标记为1,则为公共后缀的开始位置。
可能坑点:
#include <iostream>#include <stdio.h>#include <map>using namespace std;int address[100000]={0};map<int,int>mp;int main(){ int word1,word2,N; scanf("%d %d %d",&word1,&word2,&N); int start,end; char key; int i=0; while(i<N) { scanf("%d %c %d",&start,&key,&end); mp[start]=end; i++; } while(word1!=-1) { address[word1]=1; word1=mp[word1]; } while(word2!=-1) { if(address[word2]==1) { printf("%05d\n",word2); return 0; } word2=mp[word2]; } cout<<-1<<endl; return 0;}
0 0
- pat1032Sharing (25)
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25
- 25years
- 25句话
- 子序列个数(DP)
- 10.4做题--USACO1.2方格转换
- JavaScript权威指南学习之第9章 类和模块
- unity官方demo学习之Stealth(五)游戏控制器
- java synchronized详解
- pat1032Sharing (25)
- JDK&JRE&JVM_跨平台特性_开发环境配置_dos命令_字符集JAVA001-006
- Android UI ActionBar功能-ActionBarProvider的使用
- Android Studio更新升级方法
- 更新二进制位
- tinyxml源码的使用
- 【Activiti 基础篇二】与数据库的交互
- 这个家族没有后盾,不狠——影响
- Nginx 的 TCP 负载均衡介绍