1067. Disk Tree(字符串)
破题啊 写完发现理解错题意了 子目录下会有跟之前重名的
把输入的字符串存下来 排下序 然后依次找跟上面有没有重的
#include <iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<map>
#include<string>
#include<vector>
using namespace std;
vector<string>q[];
char sx[][][];
struct node
{
char c[];
}s[];
int o[];
bool cmp(node a,node b)
{
return strcmp(a.c,b.c)<;
}
int main()
{
int n,i,j,k;
char c[];
scanf("%d%*c",&n);
for(i = ; i <= n ; i++)
{
gets(s[i].c);
k = strlen(s[i].c);
for(j = ; j < k ; j++)
if(s[i].c[j]==)
s[i].c[j] = ;
}
sort(s+,s+n+,cmp);
for(i = ; i <= n ; i++)
{
int g = ;
k = strlen(s[i].c);
for(j = ; j < k ;j++)
{
if(s[i].c[j]!=)
c[g++] = s[i].c[j];
else
{
c[g] = '\0';
o[i]++;
strcpy(sx[i][o[i]],c);
g = ;
}
}
if(g)
{
c[g] = '\0';
o[i]++;
strcpy(sx[i][o[i]],c);
}
}
k = ;
for(i = ; i <= o[] ; i++)
{
for(j = ; j <= k ; j++)
printf(" ");
printf("%s\n",sx[][i]);
k++;
}
for(i = ; i <= n ; i++)
{
int f = ;k=;
for(j = ; j <= o[i]; j++)
{
if(!f||o[i-]<j)
{
for(int g = ; g <= k ; g++)
printf(" ");
printf("%s\n",sx[i][j]);
}
else
if(strcmp(sx[i][j],sx[i-][j])!=)
{
for(int g = ; g <= k ; g++)
printf(" ");
printf("%s\n",sx[i][j]);
f = ;
}
k++;
}
}
return ;
}
1067. Disk Tree(字符串)的更多相关文章
- uva 1556 - Disk Tree(特里)
题目连接:uva 1556 - Disk Tree 题目大意:给出N个文件夹关系,然后依照字典序输出整个文件文件夹. 解题思路:以每一个文件夹名作为字符建立一个字典树就可以,每一个节点的关系能够用ma ...
- ural1067 Disk Tree
Disk Tree Time limit: 2.0 secondMemory limit: 64 MB Hacker Bill has accidentally lost all the inform ...
- HDU 1504 Disk Tree
转载请注明出处:http://blog.csdn.net/a1dark 分析:查了一下这题.发现网上没有什么关于这道题的解题报告.其实题目意思挺好懂的.就是给你一些文件的目录结构.然后让你把它们组合在 ...
- 【HDOJ】1504 Disk Tree
文件可以重名.先按字典序将路径排序,再过滤掉公共前缀.其中的问题是'\'的ASCII比[A-Z0-9]大,将它替换为空格.否则字典序有问题. /* 1504 */ #include <iostr ...
- ASM Disk Discovery 最佳实践
ASM DISK 的Discovery PATH ASM实例的ASM_DISKSTRING初始化参数使用一个逗号分割的字符串限制ASM实例发现的DISK可以用于ASM DISK, 该字符串支持通配符如 ...
- Python 字符串的encode与decode
python的str,unicode对象的encode和decode方法 python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byt ...
- asp.net(C#)html无限分类树 可新增 删除 修改
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ProductSort.aspx ...
- Linux平台下源码安装mysql多实例数据库
Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...
- Windows Server 2008无损调整分区的方法
今天在装windows2008服务器的时候 发现系统只有C盘 该如何对C盘进行分区呢 windows2007 可以直接格式化 在windows2008服务器中格式化是灰色的 不能用 寻求 ...
随机推荐
- Winform DataGridView单元格的提示信息
往往当单元格的内容过多时,显示会变成这样 后缀多了几个点来显示数据未完,当鼠标移到某个单元格时,单元格里的内容会全部显示. 今天偶然发现了一个可以修改提示信息的方法,所以先记下来. 这个方法,可以对于 ...
- PHPNow升级PHP版本的方法
在WIN上有时候需要测试一些PHP程序,又不会自行独立配置环境,那么PHPNow是非常好的选择. PHPNow自带的PHP版本为5.2.14,而最后一次更新在于2010-9-22,PHP5.2对于现在 ...
- pdo 连接数据库 报错 could not find driver 解决方法
在windows 下,调试一个PHP程序时,报了这个错误, could not find driver 原来我的这个程序中用到了PDO对象, 连接mysql 5. 在PHP的默认设置中,只打开了ph ...
- 阿里云服务器无法远程其他的mysql服务器
1.初始化root密码 进入mysql数据库 1 mysql>update user set password=PASSWORD('123456') where User='root'; 2.允 ...
- PIL 安装
1.安装依赖包 1.1 ubuntu安装 apt-get install python-devapt-get install libjpeg-dev apt-get install libjpeg8- ...
- Linux安装oracle 10g常见问题之——OUI-25031
OUI-25031:Some of the configuration assistants failed/cancelled. 这是安装过程中常见的错误之一. 引起此错误的原因:/etc/hosts ...
- C# 白话系列之——白话委托
今天看到首页有个委托的文章,但大都写的太专业,而且没有实用的例子场景.正好昨天做了一个有关委托的功能,所以也来凑个热闹,用白话掰掰 一.委托是什么 我们都知道数据类型,简单点的如,想给一个变量赋值整数 ...
- EXTJS 4.2 资料 控件之Window窗体添加html
//这里要跳转页面 var subWindow = new Ext.Window({ title: '窗口', width: width, height: height, modal: true,// ...
- UML include、generalization、extend、association
1.别人的说法 转自:http://www.cnblogs.com/shinings/archive/2009/04/21/1440765.html 共性:都是从现有的用例中抽取出公共的那部分信息,作 ...
- sqlserver自定义函数【粘】
用户定义自定义函数像内置函数一样返回标量值,也可以将结果集用表格变量返回 用户自定义函数的类型: 标量函数:返回一个标量值 表格值函数{内联表格值函数.多表格值函数}:返回行集(即返回多个值) 1. ...