上机考试:网易有道的筛选模式是先上机考试,然后根据上机考试选择大概1/3参加面试。上机的平台和ACM有点类似,提交代码然后有手动阅卷。上机考试时隔比较久远,不过还能想起两个题目:1. 给定一个点分IP地址表示,写个程序把它转换成相应的32位的无符号整数并输出,如果输入不是合法数据,就返回0.这个题目如何利用好标准输入输出,其实可以很容易判断出不合法的输入用例,不过当时没有想好,导致这个题目没有AC。后来回去写的代码如下:
- #include <stdio.h>
- #include <string.h>
- bool checkpoint(char *str){
-
- int npoint = 0;
- while(*str){
- (*str) == "." ? npoint++ : npoint;
- if(*(str) != "." && !((*str) <= "9" && (*str) >= "0")) return false;
- str++;
- }
- return npoint == 3;
- }
-
- bool checkinrange(int addr[4]){
- for(int i = 0; i < 4; i++){
- if(addr[i] > 255){
- return false;
- }
- }
- return true;
- }
- bool convertIP(char s[], int addr[4]){
- char tmp[128];
- if(checkpoint(s)){
- sscanf(s, "%d.%d.%d.%d",addr, addr + 1, addr + 2, addr + 3);
- sprintf_s(tmp, sizeof(tmp), "%d.%d.%d.%d", addr[0], addr[1], addr[2], addr[3]);
- if(strcmp(s, tmp) == 0 && checkinrange(addr)){
- return true;
- }
-
- //sprintf_s()
- }
- return false;
- }
- int main()
- {
- char s[128] = {0};
- int addr[4];
-
- while(scanf("%s", s) != EOF){
- memset(addr, -1, sizeof(addr));
- if(convertIP(s, addr))
- {
- unsigned int result = 0;
- result = addr[0] * (0x1 << 24);
- result += addr[1] * (0x1 << 16);
- result += addr[2] * (0x1 << 8);
- result += addr[3];
- printf("%u
", result);
- }
- else{
- printf("-1
");
- }
-
- }
-
- return 0;
- }
小米公司2013校园招聘笔试题(研发)2012搜狗校园招聘笔试题相关资讯 互联网 网易有道面经 网易有道校园招聘
- 30亿网民坐稳啦!互联网之门将要换 (今 06:51)
- 互联网迎来“独立日”? (03月21日)
- 互联网让我们变聪明了? (11/13/2015 07:53:43)
| - 互联网从开放走向封闭 (06月20日)
- 全球首个互联网网页上线 25 周年 (12/21/2015 13:40:02)
- 古巴的Netflix、Hulu和Spotify不在 (09/28/2015 07:00:59)
|
本文评论 查看全部评论 (0)