正式赛-ZZULIOJ-1874-蛤玮学计网
2016-04-20 17:14
393 查看
Contest - “玲珑杯”郑州轻工业学院第八届ACM程序设计大赛暨河南高校邀请赛-正式赛
Problem A: 蛤玮学计网
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 906 Solved: 138
SubmitStatusWeb Board
Description
蛤玮最近学习了关于ip的知识,于是他迫不及待的想把新知识传授给她的妹子.蛤玮的妹子随便写下了一个字符串,蛤玮现在要告诉她这个字符串是不是一个合法的ip地址.
为简单考虑,仅考虑ipv4的情况,即合法ip为形同”a1.a2.a3.a4”,且0<=ai<=255。
Input
第一行为一个整数T(1<=T<=20),代表数据组数。接下来T行每行一个字符串,其中不包含空格,Tab以及回车,长度不超过50。
Output
若合法,输出”Yes”,否则输出”No”(不包含引号)。
Sample Input
2
10.105.240.51
f.a.t.e
Sample Output
Yes
No
HINT
我们认为010.105.240.051是合法的。
错了五次,坑点比较多。
一:显而易见,只能由四个数字和三个’.’组成
二:首位和末位不能是’.’
三:每个数字取值在0到255之间
四:数字可以有前导零,只要位数小于等于3即可
代码
Problem A: 蛤玮学计网
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 906 Solved: 138
SubmitStatusWeb Board
Description
蛤玮最近学习了关于ip的知识,于是他迫不及待的想把新知识传授给她的妹子.蛤玮的妹子随便写下了一个字符串,蛤玮现在要告诉她这个字符串是不是一个合法的ip地址.
为简单考虑,仅考虑ipv4的情况,即合法ip为形同”a1.a2.a3.a4”,且0<=ai<=255。
Input
第一行为一个整数T(1<=T<=20),代表数据组数。接下来T行每行一个字符串,其中不包含空格,Tab以及回车,长度不超过50。
Output
若合法,输出”Yes”,否则输出”No”(不包含引号)。
Sample Input
2
10.105.240.51
f.a.t.e
Sample Output
Yes
No
HINT
我们认为010.105.240.051是合法的。
错了五次,坑点比较多。
一:显而易见,只能由四个数字和三个’.’组成
二:首位和末位不能是’.’
三:每个数字取值在0到255之间
四:数字可以有前导零,只要位数小于等于3即可
代码
#include<stdio.h> #include<math.h> #include<iostream> #include<algorithm> #include<string.h> using namespace std; int main() { int T; scanf("%d",&T); while(T--) { char str[55]; scanf("%s",str); int len=strlen(str); bool flag=0;//不合法就标记为1 int point_num=0;//点的数量 int num_num=0;//数的数量 int num=0;//数的数值 if(str[0]=='.'||str[len-1]=='.') flag=1; for(int i=0; i<len;i++) { if(str[i]>='0'&&str[i]<='9') { num=0; num_num++;//数的数量为4 int num_num_num=0;//数的位数 while(str[i]>='0'&&str[i]<='9'&&i<len) { num=num*10+str[i]-'0'; i++; num_num_num++; } i--; if(num<0||num>255||num_num_num>3) { flag=1; break; } } else if(str[i]=='.') { num=0; point_num++; } else { flag=1; break; } } if(num_num!=4||point_num!=3) flag=1; if(flag==1) printf("No\n"); else printf("Yes\n"); } return 0; }
相关文章推荐
- 9款.net反编译的必备神器
- 移动前端开发之viewport的深入理解(转)
- C++基础
- java对象是由构造器创建的吗?
- mysql数据库查询常用
- Jquery 给div设置背景图
- 研发管理总结
- [ios] Storyboard里面的几种Segue区别及视图的切换
- 串的模式匹配算法
- Xunsearch迅搜(基于 xapian+scws 的开源中文搜索引擎)安装与简单使用
- Python 第十三篇之一:前端页面 js和dome
- iOS分享功能文档
- TableLayout和霓虹灯效果、网格
- OpenCV 人脸识别
- OpenCV相关代码库的介绍
- BIEE日志
- Spring整合JMS(一)——基于ActiveMQ实现
- MyEclipse + Maven开发Web工程的详细配置过程
- jQuery中iframe的操作(点击按钮新增窗口)
- activiti入门