第四周作业的抄写部分
来源:互联网 发布:快速排序java实现 编辑:程序博客网 时间:2024/09/21 09:24
//有一种细菌分为A、B两个亚种,它们的外在特征几乎完全相同,仅仅在繁殖能力上有显著差别,//A亚种繁殖能力非常强,B亚种的繁殖能力很弱。在一次为时一个小时的细菌繁殖实验中,实验员由//于疏忽把细菌培养皿搞乱了,请你编写一个程序,根据实验结果,把两个亚种的培养皿重新分成两组。#include <iostream>using namespace std;int main(){ //i,j为循环变量 int i,j; //n为细菌数量 int n; //id为细菌的编号,rate记录细菌的繁殖率,id[i],rate[i]对应其中 int id[100]; double rate[100]; cin >> n; for (i=0;i<n;i++) { //initial finaled 分别表示培养前后细菌数量 double initial,finaled; cin >> id[i] >> initial >> finaled ; rate[i]=finaled/initial; } //对整个细菌繁殖率进行排序 繁殖率升序 for (i=0;i<n;i++) for (j=0;j<n-i-1;j++) { if(rate[j+1]<rate[j]) { int temp1 = id[j]; id[j]=id[j+1]; id[j+1]=temp1; double temp2 =rate[j+1]; rate[j+1]=rate[j]; rate[j]=temp2; } } //记录最大的差 double maxrate = 0; //a类细菌的数量 int num1 = 0; for (i=0;i<n-1;i++) { if (maxrate<(rate[i+1]-rate[i])) { maxrate = rate[i+1]-rate[i]; num1=i; } } cout << maxrate << num1 <<endl ; //输出繁殖率最大的组 cout << num1+1 << endl ; for(i=num1+1;i<n;i++) { cout << id[i] << " " << rate[i] << endl; } //输出繁殖率小的组 cout << n-num1-1 << endl ; for (i=0;i<=num1;i++) { cout << id[i] << " " << rate[i] << endl; } return 0;}
/*描述求两个不超过200位的非负整数的和。输入有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。输出一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。样例输入2222222222222222222233333333333333333333样例输出55555555555555555555*/#include <iostream>#include <cstring>using namespace std;//str1,str2接受两个大整数输入并将它们转化至//整形数组a1,a2中char str1[201],str2[201];int a1[200]={0},a2[201]={0};int main(){ //i为循环变量 int i; //输入 cin >> str1 >> str2 ; //len1,len2记录两个数组的长度 int len1 = strlen(str1); int len2 = strlen(str2); //将str1,str2中的字符转化为数字,存入a1,a2中,每个元素只保存 //大整数的一位数字 for(i=0;i<len1;i++) a1[i]=str1[len1-1-i]-'0'; for(i=0;i<len2;i++) a2[i]=str2[len2-1-i]-'0'; //从低位到高位做加法,并直接保存到a2 //大整数最多为200,所以至多加200次 ---这样比较容易写程序,但并不环保 for(i=0;i<200;i++) { a2[i]+=a1[i]; if(a2[i]>=10)//判断是否进位 { a2[i]-=10; a2[i+1]++; } } //做完加法,最多201位,我们先找最高位非零的数 for(i=200;i>=0;i--) { if(a2[i]!=0) break; } if(i==-1) cout << 0; else for(;i>=0;i--) cout << a2[i]; cout << endl; return 0;}
0 0
- 第四周作业的抄写部分
- 第五周作业的抄写部分
- 第六周作业的抄写部分
- 第四周作业 部分
- 第四周的作业
- 第三周作业中的抄写部分
- 第四周作业(课本习题部分)
- 我的C++第四周作业1(第三章部分例题与练习题)
- 第四周作业 -- 图的表示
- 第四周作业--图的表示
- 第四周作业—图的表示
- 第四周作业---图的表示
- 第四周作业-图的表示
- 第四周作业-图的表示
- 第四周作业---图的表示
- 第四周作业—图的表示
- 第四周作业--图的表示
- 第四周作业—图的表示
- 1002. 写出这个数 (20)
- Photoshop 基础知识 与 常用 快捷键
- beginBackgroundTaskWithExpirationHandler
- HDU 1083
- 黑马程序员 Java基础知识总结-异常处理
- 第四周作业的抄写部分
- python数据结构与算法 11 后缀表达式求值
- hdu 1874 畅通工程续(Floyd)
- 2012-01-29 19:01 Http的KeepAlive最详细的说明文档
- JAVA_类加载器详解
- C++头文件有关内容(不断更新)
- oracle递归查询
- 对象间是如何进行勾搭的?
- mouseover事件与mouseenter事件的区别