1067

破题啊  写完发现理解错题意了 子目录下会有跟之前重名的

把输入的字符串存下来 排下序 然后依次找跟上面有没有重的

 #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(字符串)的更多相关文章

  1. uva 1556 - Disk Tree(特里)

    题目连接:uva 1556 - Disk Tree 题目大意:给出N个文件夹关系,然后依照字典序输出整个文件文件夹. 解题思路:以每一个文件夹名作为字符建立一个字典树就可以,每一个节点的关系能够用ma ...

  2. ural1067 Disk Tree

    Disk Tree Time limit: 2.0 secondMemory limit: 64 MB Hacker Bill has accidentally lost all the inform ...

  3. HDU 1504 Disk Tree

    转载请注明出处:http://blog.csdn.net/a1dark 分析:查了一下这题.发现网上没有什么关于这道题的解题报告.其实题目意思挺好懂的.就是给你一些文件的目录结构.然后让你把它们组合在 ...

  4. 【HDOJ】1504 Disk Tree

    文件可以重名.先按字典序将路径排序,再过滤掉公共前缀.其中的问题是'\'的ASCII比[A-Z0-9]大,将它替换为空格.否则字典序有问题. /* 1504 */ #include <iostr ...

  5. ASM Disk Discovery 最佳实践

    ASM DISK 的Discovery PATH ASM实例的ASM_DISKSTRING初始化参数使用一个逗号分割的字符串限制ASM实例发现的DISK可以用于ASM DISK, 该字符串支持通配符如 ...

  6. Python 字符串的encode与decode

    python的str,unicode对象的encode和decode方法 python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byt ...

  7. asp.net(C#)html无限分类树 可新增 删除 修改

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ProductSort.aspx ...

  8. Linux平台下源码安装mysql多实例数据库

    Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...

  9. Windows Server 2008无损调整分区的方法

    今天在装windows2008服务器的时候  发现系统只有C盘  该如何对C盘进行分区呢   windows2007 可以直接格式化  在windows2008服务器中格式化是灰色的  不能用  寻求 ...

随机推荐

  1. 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值(转载)

    1.阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 <0:出错,=0:连接关闭,>0接收到数据大小,特别:返回值  ...

  2. php header函数要点

    发布:snowfly   来源:网络     [大 中 小] 相信很多人写程序时,使用 header(location) 进行跳转往往不记得写 exit() 语句,这种做法存在严重风险. 从浏览器来看 ...

  3. PHP开发环境和软件

    1/很方便的软件XAMMP集成了PHP+MYSQL+MYPHPADMIN等等软件 2/sublime text 程序员神器,都明白的 ps.如果装了vm虚拟机,80端口有时候会被占用,进程关闭就好.

  4. 关于hadoop2.4.2版本学习时遇到的问题

    问题一:namenode启动失败 描述:在初始化后hadoop后,发现datanode启动失败,namenode则可以正常启动,如果把用户换成root权限,再次启动时,则namenode和datano ...

  5. Python 信号量

    信号的概念 信号(signal)--     进程之间通讯的方式,是一种软件中断.一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号. 几个常用信号: SIGINT     终止进程  中断进 ...

  6. Beaglebone Back学习七(URAT串口测试)

    URAT串口测试

  7. fedora -- java多版本切换

    一般java开发时会下载多个版本的SDK,所以需要多个版本中进行切换 1. 设置JAVA_HOME环境变量需要打开.bashrc文件 2. 安装时使用alternatives将不同版本的java连接到 ...

  8. GIS业务逻辑

    三维怎么加载数据文件? OpenFileDialog frm = new OpenFileDialog(); frm.Filter = "文件数据集|*.tile|多时相数据集|*.Temp ...

  9. ios 保存本地数据的方法

    1. NSString *path = [[NSBundle mainBundle] pathForResource:@"文件名" ofType:@"plist" ...

  10. poj 2728 Desert King (最小比例生成树)

    http://poj.org/problem?id=2728 Desert King Time Limit: 3000MS   Memory Limit: 65536K Total Submissio ...