1006. Sign In and Sign Out 解析
来源:互联网 发布:linux vi清空文件内容 编辑:程序博客网 时间:2024/05/16 11:43
这个和1005差不多。处理好时间的格式应该没有问题。我把时间全部转换成了秒为单位进行比较。
#include <iostream>#include <string>using namespace std;struct Node{string ID;string Login;string Loout;};int Str2Int(char s) {int temp = 0;switch (s){case '1':temp = 1; break;case '2':temp = 2; break;case '3':temp = 3; break;case '4':temp = 4; break;case '5':temp = 5; break;case '6':temp = 6; break;case '7':temp = 7; break;case '8':temp = 8; break;case '9':temp = 9; break;case '0':temp = 0; break;default:break;}return temp;}int ChangeTime(string s) {int H1, H2, M1, M2, S1, S2;H1 = Str2Int(s[0]);H2 = Str2Int(s[1]);M1 = Str2Int(s[3]);M2 = Str2Int(s[4]);S1 = Str2Int(s[6]);S2 = Str2Int(s[7]);int sum = (H1 * 10 + H2) * 3600 + (M1 * 10 + M2) * 60 + (S1 * 10 + S2);return sum;}//bool CompareIn(Node N1, Node N2) { //N1大返回true 否则false//int n1, n2;//n1 = ChangeTime(N1.Login);//n2 = ChangeTime(N2.Login);//if (n1 > n2)//return true;//else//{//return false;//}//}////bool CompareOut(Node N1, Node N2) { //N1大返回true 否则false//int n1, n2;//n1 = ChangeTime(N1.Loout);//n2 = ChangeTime(N2.Loout);//if (n1 > n2)//return true;//else//{//return false;//}//}int main() {int N;cin >> N;struct Node * Data = new Node[N];for (int i = 0; i < N; i++) {cin >> Data[i].ID >> Data[i].Login >> Data[i].Loout;}int Out, In, MaxNum, MinNum;In = ChangeTime(Data[0].Login);Out = ChangeTime(Data[0].Loout);MaxNum = MinNum = 0;////输出时间//for (int i = 0; i < N; i++)//{//cout << "Login: " << ChangeTime(Data[i].Login) << " " << "LogOut: " << ChangeTime(Data[i].Loout) << endl;//}for (int i = 1; i < N; i++) {if (ChangeTime(Data[i].Login) < In) {In = ChangeTime(Data[i].Login);MinNum = i;}if (ChangeTime(Data[i].Loout) > Out) {Out = ChangeTime(Data[i].Loout);MaxNum = i;}}cout << Data[MinNum].ID << " " << Data[MaxNum].ID << endl;}
0 0
- 1006. Sign In and Sign Out 解析
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out
- PAT 1006. Sign In and Sign Out
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006. Sign In and Sign Out (25)
- 1006.Sign In and Sign Out
- 1005. Spell It Right 解析
- 数据结构实验之链表一:顺序建立链表
- 数据结构实验之链表二:逆序建立链表
- 记录开发中遇到的坑或者Bug<持续更新...>
- ubutun16.04LTS获取root账户并登录
- 1006. Sign In and Sign Out 解析
- 数据结构实验之链表七:单链表中重复元素的删除
- MSP430点亮led小灯
- 数据结构实验之链表三:链表的逆置
- 在一个平面坐标系上,有两个矩形,计算交集的面积。
- 1007. Maximum Subsequence Sum 解析
- 斐波那契数列
- 数据结构实验之链表四:有序链表的归并
- SHH框架搭建