浙江财经大学
信息管理与工程学院

NBUT 1025 IP地址

本文由 Ocrosoft 于 2016-12-02 17:35:52 发表

Time Limit:1000MS     Memory Limit:65535KB     64bit IO Format:%I64d & %I64u

Description

在数据库中存IP的话,比如192.168.1.1需要11位,但是把它逐段弄成十六进制放在一起的话就是C0A80101,只要八位了。

这样一来就可以减少数据库所占用的空间了。

Input

本题有多组数据,以EOF结尾。 
每组数据一行,为一个合法的IP地址(四个不超过255的数字,三个点)

Output

对于每组数据输出一行,为其十六进制字符串,字母大写。

Sample Input

192.168.0.1

Sample Output

C0A80001

Solution

%X输出大写十六进制形式,%x输出小写十六进制形式。
#include <set>
#include <map>
#include <list>
#include <cmath>
#include <stack>
#include <queue>
#include <ctime>
#include <string>
#include <cstdio>
#include <vector>
#include <cctype>
#include <climits>
#include <sstream>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <functional>
#define strend string::npos
#define ms(a) memset(a,0,sizeof(a))
#define  rep(a,v,b) for(int a=v;a<b;a++)
#define  repe(a,v,b) for(int a=v;a<=b;a++)
typedef long long LL;
const int INF = INT_MAX / 2;
const int MAXN = 300000+ 10;
const int MOD = 1000000009;
int gcd(int a, int b)
{
	if (!b)return a;
	return gcd(b, a%b);
}
/*(◕‿‿◕)(◕‿‿◕) (◕‿‿◕) (◕‿‿◕) (◕‿‿◕) (◕‿‿◕)*/
/*(◕‿‿◕) 签订契约,成为马猴烧酒吧 (◕‿‿◕)*/
/*(◕‿‿◕)(◕‿‿◕) (◕‿‿◕) (◕‿‿◕) (◕‿‿◕) (◕‿‿◕)*/
using namespace std;
int main()
{
	int a,b,c,d;
	while(~scanf("%d.%d.%d.%d",&a,&b,&c,&d))
	{
		printf("%.2X%.2X%.2X%.2X\n",a,b,c,d);
	}
	return 0;
}

欢迎分享与转载,请保留链接与出处。Ocrosoft » NBUT 1025 IP地址

点赞 (0)or拍砖 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址