zoj 1730 Crazy Tea Party

来源:互联网 发布:w8卸载软件 编辑:程序博客网 时间:2024/05/28 15:53
//水题不水啊!/*类似冒泡程序 如果所有人是线性排列,那我们的工作就是类似冒泡程序做的工作:1,2,3,4,5变为5,4,3,2,1 ,耗时n(n-1)/2 但是出现了环,也就是说1,2,3,4,5变为3,2,1,5,4也可满足条件  我们可以把这个环等分成两个部分 ,每个部分看成是线性的,再把它们花的时间加起来. 当n是偶数时, 每份人数n/2 ,即 2*(n/2 )*(n/2 -1)/2; 当n是奇数时,两份的人数分别是n/2和n/2+1,即(n/2)*(n/2 -1)/2 + (n/2 +1)*(n/2)/2 */#include "iostream"using namespace std;int main(){int testcase, i, num, minutes;cin >> testcase;for (i = 0; i < testcase; i++){cin >> num;minutes = 0;if (num % 2 == 0){minutes = 2 * (num / 2) * (num / 2 - 1) / 2;}else{minutes = (num / 2) * (num / 2 - 1) / 2 + (num / 2 + 1) * (num / 2) / 2;}cout << minutes << endl;}}

原创粉丝点击