hdu1497.图书管理系统
hdu1497.图书管理系统
Problem Discription
- N books(id from1~N), M users(id from 1~M)
- every user are only allowed to borrow 9 books .
- only three commands : Borrow the book , Return the book , Query the user .
Note
- 用vector声明二维数组,不能只初始化外层的大vector,一定要==把小vector也给初始化==,否则会导致运行时错误!
1 2 3 4 5
// 初始化为N行,每行有2个string vector<vector<int>>books(N,vector<int>(2)); for(int i=0;i<books.size();i++){ books[i][0]=1;//否则在这一步会出现运行时错误 }
为什么switch语句里从case’R’出来会直接跳到case ‘Q’?
这是因为在case 'R'
中==缺少break
语句==,导致代码执行了Returnx
函数后,会继续向下执行,直到遇到下一个break
或switch
语句结束。- vector的sort排序函数
①必须包含<algorithm>
②less<int>()
,greater<int>()
分别是从小到大、从大到小排序1
sort(users[ui-1].begin()+1,users[ui-1].end(),less<int>());
注意:==sort函数可以只对vector的一部分进行排序==。
比如我这行代码,起始位置是begin()+1
,也就是对第二个元素到最后一个元素这个区间排序,不管第一个元素
This post is licensed under CC BY 4.0 by the author.