• HDU 4081-Parsing URL(水)


    Parsing URL

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others)
    Total Submission(s): 1575    Accepted Submission(s): 796


    Problem Description
    In computing, a Uniform Resource Locator or Universal Resource Locator (URL) is a character string that specifies where a known resource is available on the Internet and the mechanism for retrieving it.
    The syntax of a typical URL is:
    scheme://domain:port/path?query_string#fragment_id
    In this problem, the scheme, domain is required by all URL and other components are optional. That is, for example, the following are all correct urls:
    http://dict.bing.com.cn/#%E5%B0%8F%E6%95%B0%E7%82%B9
    http://www.mariowiki.com/Mushroom
    https://mail.google.com/mail/?shva=1#inbox
    http://en.wikipedia.org/wiki/Bowser_(character)
    ftp://fs.fudan.edu.cn/
    telnet://bbs.fudan.edu.cn/
    http://mail.bashu.cn:8080/BsOnline/
    Your task is to find the domain for all given URLs.
     

    Input
    There are multiple test cases in this problem. The first line of input contains a single integer denoting the number of test cases.
    For each of test case, there is only one line contains a valid URL.
     

    Output
    For each test case, you should output the domain of the given URL.
     

    Sample Input
    3 http://dict.bing.com.cn/#%E5%B0%8F%E6%95%B0%E7%82%B9 http://www.mariowiki.com/Mushroom https://mail.google.com/mail/?shva=1#inbox
     

    Sample Output
    Case #1: dict.bing.com.cn Case #2: www.mariowiki.com Case #3: mail.google.com
    训练一下高速找到水题并切掉的能力。。毕竟现场赛仅仅能做水题了。

    。7分钟1A

    #include <iostream>
    #include <algorithm>
    #include <cstdio>
    #include <cstring>
    #include <string>
    #include <vector>
    #include <cmath>
    #include <map>
    using namespace std;
    #define LL long long
    char s[10010],ans[10010];
    int main()
    {
    	//ios::sync_with_stdio(false);
    	int t,p,cas=1;
    	scanf("%d",&t);
    	getchar();
    	while(t--)
    	{
    		gets(s);
    		int len=strlen(s);
    		for(int i=0;i<len;i++)
    		{
    			if(s[i]=='/'&&s[i-1]=='/')
    			{
    				int j=i+1;p=0;
    				while(s[j]!='/'&&s[j]!=':')
    					ans[p++]=s[j++];
    				break;
    			}
    		}
    		printf("Case #%d: ",cas++);
    		for(int i=0;i<p;i++)
    			printf("%c",ans[i]);
    		puts("");
    	}
    	return 0;
    }


    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    mysql数据库基本类型
    常用辅助类【转】
    Java 并发笔记】并发机制底层实现整理[转发]
    关于PROPAGATION_NESTED的理解
    线程数设置
    c# Expression 扩展[转]
    Net定时器 【转载】
    【转】高可用设计-58沈剑
    【转】委托的三种调用示例(同步调用 异步调用 异步回调)
    [coursera OA] acme match
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4651229.html
Copyright © 2020-2023  润新知