阿里笔试题二
来源:互联网 发布:vb 数值转换为字符 编辑:程序博客网 时间:2024/05/21 06:45
#include <math.h>#include <stdio.h>#include <string.h>#include <stdlib.h>#include <assert.h>#include <limits.h>#include <stdbool.h>/** 请完成下面这个函数,实现题目要求的功能 **/ /** 当然,你也可以不按照这个模板来作答,完全按照自己的想法来 ^-^ **/int time_cal(int num_list1_input[], int num_list2_input[], int num_list3_input[], char char_list_input[], int length){ for (int i = 0; i < length; ++i) { int j = 0; for (j = 0; char_list_input[j] != ' '; ++j) { num_list1_input[i] = char_list_input[j] - '0'; } for (int k = j + 1; char_list_input[k] != '\0'; ++k) { num_list3_input[i] = char_list_input[k] - '0'; } num_list2_input[i] = num_list3_input[i] - num_list1_input[i]; }}void swap(int num_list1_input[], int num_list2_input[], int num_list3_input[], int length, int num1_input, int num2_input){ int num1_cp = 0; int num2_cp = 0; int num3_cp = 0; num1_cp = num_list1_input[num1_input]; num2_cp = num_list2_input[num1_input]; num3_cp = num_list3_input[num1_input]; num_list1_input[num1_input] = num_list1_input[num2_input]; num_list2_input[num1_input] = num_list2_input[num2_input]; num_list3_input[num1_input] = num_list3_input[num2_input]; num_list1_input[num2_input] = num1_cp; num_list2_input[num2_input] = num2_cp; num_list3_input[num2_input] = num3_cp; }void sort(int num_list1_input[], int num_list2_input[], int num_list3_input[], int length){ int k = 0; for (int i = 0; i < length - 1; ++i) { k = i; for (int j = i + 1; j < length; ++j) { if (num_list1_input[k] > num_list1_input[j]) { k = j; } } swap(num_list1_input, num_list2_input, num_list3_input, length, i, k); }}int findMeetingTime(int meetingTimeArray_size, char** meetingTimeArray) { int num_list_start[meetingTimeArray_size] = {0}; int num_list_end[meetingTimeArray_size] = {0}; int num_list_mid[meetingTimeArray_size] = {0}; int time_count = 0; for (int i = 0; i < meetingTimeArray_size; ++i) { time_count = time_count + num_list_start[i] + num_list_mid[i]; if (time_count >= num_list_end[i]) { return -1; } } return 1;}int main() { int res; int _meetingTimeArray_size = 0; int _meetingTimeArray_i; scanf("%d\n", &_meetingTimeArray_size); char* _meetingTimeArray[_meetingTimeArray_size]; for(_meetingTimeArray_i = 0; _meetingTimeArray_i < _meetingTimeArray_size; _meetingTimeArray_i++) { char* _meetingTimeArray_item; _meetingTimeArray_item = (char *)malloc(512000 * sizeof(char)); scanf("\n%[^\n]", &_meetingTimeArray_item); _meetingTimeArray[_meetingTimeArray_i] = _meetingTimeArray_item; } int num_list_start[_meetingTimeArray_size] = {0}; int num_list_mid[_meetingTimeArray_size] = {0}; int num_list_end[_meetingTimeArray_size] = {0}; time_cal(num_list_start, num_list_mid, num_list_end, _meetingTimeArray, _meetingTimeArray_size); sort(num_list_start, num_list_mid, num_list_end, _meetingTimeArray_size); res = findMeetingTime(_meetingTimeArray_size, _meetingTimeArray); printf("%d\n", res); return 0;}
0 0
- 阿里笔试题二
- 阿里笔试(二)
- 阿里笔试题(二)——正则表达式
- 2016年阿里C/C++开发笔试程序题二
- 2016阿里算法工程师笔试题 (二)
- 阿里云笔试题
- 阿里云笔试题
- 阿里2014笔试题
- 阿里笔试题-选择
- 2015阿里笔试题
- 阿里笔试题
- 阿里的笔试题
- 阿里笔试题
- 阿里笔试题
- 阿里笔试大题
- 阿里笔试第一题
- 2015阿里笔试题
- 阿里笔试题
- 哈希表
- 【洛谷P3384】【模板】树链剖分
- 操作系统学习笔记(七)
- linux数据类型
- SQL truncate 、delete与drop区别
- 阿里笔试题二
- 文章标题
- JSTL标签
- c语言文件操作函数应用(3) ——学习整理
- 【Java Utility】Jsoup网页爬虫工具--使用DOM方法浏览Document【七】
- 我的python进阶之路一
- Struts2第二篇【开发步骤、执行流程、struts.xml讲解、defalut-struts讲解】
- 商品分类初理解
- AngularJs入门