我是靠谱客的博主 舒适云朵,最近开发中收集的这篇文章主要介绍杭电oj简单题 1004、1008、1012、1037、2070、2071,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1004
气球中颜色最多的是哪个颜色,用map

#include<iostream>
#include<map>
#include<string>
using namespace std;
int main(){
map<string,int>ballen;
int N;
string str;
while(cin>>N){
if(N==0)
break;
ballen.clear();
while(N--){
cin>>str;
ballen[str]++;
}//将颜色 数目键值对输入完毕
//下面开始遍历找最大值
//因为是牵扯到键和值,所以用迭代器
/*int max=0;
string maxColor;
map<string,int>::iterator iter;
for(iter=ballen.begin();iter!=ballen.end();iter++){
if(iter->second>max){
max=iter->second;
maxColor=iter->first;
}
}
cout<<maxColor;*/
//下面是另一种方法
map<string,int>::iterator m,p;
p=m=ballen.begin();
for(;p!=ballen.end();p++){
if(p->second>m->second)
m=p;//m始终指向最大的值 
}
cout<<m->first<<endl;
}
return 0;
}

1008

#include<iostream>
using namespace std;
int main(){
int N,j;
while(cin>>N){
if(N==0)
break;
int i=0;
int sum=0;
while(N--){
cin>>j;
if(j>i){
sum+=(j-i)*6;
}
else if(j<i){
sum+=(i-j)*4;
}
sum+=5;
i=j;
}
cout<<sum<<endl;
}
return 0;
}

1012

#include<iostream>
#include<cstdio>
using namespace std;
int jie(int x){
int sum=1;
for(int i=x;i>=1;i--)
sum*=i;
return sum;
}
int main(){
int n;
double a[11];
cout<<"n e"<<endl;
cout<<"- -----------"<<endl;
cout<<"0 1"<<endl;
cout<<"1 2"<<endl;
cout<<"2 2.5"<<endl;
a[0]=1;
for(int n=1;n<=9;n++){
a[n]=a[n-1]+1.0/jie(n);
}
for(int i=3;i<=9;i++)
printf("%d %.9lfn",i,a[i]);
return 0;
}

1037

#include<iostream>
using namespace std;
int main(){
int a,b,c;
cin>>a>>b>>c;
if(a>168&&b>168&&c>168)
cout<<"NO CRASH"<<endl;
else if(a<=168)
cout<<"CRASH"<<" "<<a<<endl;
else if(b<=168)
cout<<"CRASH"<<" "<<b<<endl;
else
cout<<"CRASH"<<" "<<c<<endl;
return 0;
}
/*
int main(){
int a[3];
for(int i=0;i<3;i++)
cin>>a[i];
int k=1;
for(int i=0;i<3;i++){
if(a[i]<=168){
cout<<"CRASH"<<" "<<a[i]<<endl;
k=0;
break;//别忘了break!
}
if(k)
cout<<"NO CRASH"<<endl;
}
return 0;
}
*/

2070

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int n;
__int64 a[51];
while(1){
cin>>n;
if(n==-1)
break;
a[0]=0;
a[1]=1;
for(int i=2;i<=n;i++){
a[i]=a[i-1]+a[i-2];
}
cout<<a[n]<<endl;
}
return 0;
}

2071

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int t,n;
double high=0.0;
cin>>t;
while(t--){
cin>>n;
double max=0.0;
while(n--){
cin>>high;
if(high>max)
max=high;
}
printf("%.2lfn",max);
}
return 0;
}

最后

以上就是舒适云朵为你收集整理的杭电oj简单题 1004、1008、1012、1037、2070、2071的全部内容,希望文章能够帮你解决杭电oj简单题 1004、1008、1012、1037、2070、2071所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部