zoukankan      html  css  js  c++  java
  • Code Forces 20A BerOS file system

    A. BerOS file system
    time limit per test
    2 seconds
    memory limit per test
    64 megabytes
    input
    standard input
    output
    standard output

    The new operating system BerOS has a nice feature. It is possible to use any number of characters '/' as a delimiter in path instead of one traditional '/'. For example, strings //usr///local//nginx/sbin// and /usr/local/nginx///sbin are equivalent. The character '/' (or some sequence of such characters) at the end of the path is required only in case of the path to the root directory, which can be represented as single character '/'.

    A path called normalized if it contains the smallest possible number of characters '/'.

    Your task is to transform a given path to the normalized form.

    Input

    The first line of the input contains only lowercase Latin letters and character '/' — the path to some directory. All paths start with at least one character '/'. The length of the given line is no more than 100 characters, it is not empty.

    Output

    The path in normalized form.

    Examples
    input
    //usr///local//nginx/sbin
    
    output
    /usr/local/nginx/sbin
    
    遇到多个////
    只输出一个/
    #include <iostream>
    #include <string.h>
    #include <stdlib.h>
    #include <algorithm>
    #include <math.h>
    #include <stdio.h>
    
    using namespace std;
    char a[105];
    char b[105];
    int main()
    {
        gets(a);
        bool tag=0;
        int len=strlen(a);
        int cnt=0;
        for(int i=0;i<len;i++)
        {
            if(a[i]!='/')
            {
               // cout<<a[i];
                b[cnt++]=a[i];
                tag=0;
            }
    
            else
            {
                if(!tag)
                {
                    //cout<<a[i];
                    b[cnt++]=a[i];
                    tag=1;
                }
            }
        }
        if(b[0]!='/')
            cout<<'/';
        for(int i=0;i<cnt;i++)
        {
            if(i==cnt-1&&b[i]=='/'&&cnt!=1)
                continue;
           cout<<b[i];
        }
        cout<<endl;
        return 0;
    }
    


  • 相关阅读:
    STL(七)之萃取技术
    STL(六)之空间配置器
    为Oracle配置监听
    Oracle11.2.01安装过程
    SVN简介
    SVN客户端安装教程
    SVN服务器安装教程
    排序算法-冒泡排序
    使用Struts2实现超级文本的链接
    排序算法-快速排序
  • 原文地址:https://www.cnblogs.com/dacc123/p/8228719.html
Copyright © 2011-2022 走看看