九度机试1475 IP数据报解析 北邮计算机2012年
来源:互联网 发布:logo自动生成软件 编辑:程序博客网 时间:2024/05/04 21:56
真不知道为什么写成这鸟样才能AC,之前用C++写过一个逻辑清晰的,始终不能AC,于是把换成C语言,
所有的循环用手写出来(我真不想这样),居然AC了,代码看起来真烂,可是T M D居然AC了。。。。
。欲哭无泪啊。。。M*D,浪费了老子两个小时,没检查出任何错误。九度,你妹!!!
#include <stdio.h>#include <string.h>#include <ctype.h>int main(){ int n=0,i=0,offset=0;; char bag[1000]={0}; int num[1000]={0}; scanf("%d",&n); gets(bag); while(n--){ int index=0,dest[4]={0}; gets(bag); for(int j=0;j<strlen(bag);j++){ char c=bag[j]; if(c!=' '){ if(isdigit(c)){ c=c-'0'; }else{ c =c-'a'+10; } num[index]=c; index++; } } offset=num[1]*8; dest[0]=num[32]*16+num[33]; dest[1]=num[34]*16+num[35]; dest[2]=num[36]*16+num[37]; dest[3]=num[38]*16+num[39]; printf("Case #%d\n",++i); printf("Total length = %d bytes\n",num[4]*256*16+num[5]*256+num[6]*16+num[7]); printf("Source = %d.%d.%d.%d\n",num[24]*16+num[25],num[26]*16+num[27],num[28]*16+num[29],num[30]*16+num[31]); printf("Destination = %d.%d.%d.%d\n",dest[0],dest[1],dest[2],dest[3]); printf("Source Port = %d\n",num[offset]*256*16+num[1+offset]*256+num[2+offset]*16+num[3+offset]); printf("Destination Port = %d\n\n",num[4+offset]*256*16+num[5+offset]*256+num[6+offset]*16+num[7+offset]); } return 0;} /************************************************************** Problem: 1475 User: 爱理momoko Language: C Result: Accepted Time:10 ms Memory:916 kb****************************************************************/
1 0
- 九度机试1475 IP数据报解析 北邮计算机2012年
- IP协议及IP数据报解析
- IP协议:IP数据报解析以及IP数据传输
- IP数据报之首部长度解析
- IP首部数据报格式大解析
- IP数据报由报
- IP数据报由报
- IP数据报格式
- IP数据报
- IP数据报格式
- IP数据报格式
- IP数据报
- IP数据报格式
- IP数据报格式
- IP数据报格式
- IP数据报格式
- IP数据报格式
- IP数据报详解
- 计算机专业经典书籍
- Session.load()和Session.get()方法的区别
- CSS实现相对浏览器窗口定位
- CCParticleSystem粒子系统
- border-radius
- 九度机试1475 IP数据报解析 北邮计算机2012年
- Java中x=x+1 与x+=1 的一点区别
- Difference Between EEPROM and Flash
- JavaScript插入动态样式
- android开发——hello world!
- android开发——手机通话功能实现
- android开发——手机短信功能
- android开发——获取网络图片
- android开发——内容观察者