pat乙级 1051-1055

//1
#include<stdio.h>
#include<math.h>
#define m 0.01
int main(){
double r1,p1,r2,p2;
scanf("%lf %lf %lf %lf",&r1,&p1,&r2,&p2);
double a,b;
a=r1*cos(p1)*r2*cos(p2)-r1*sin(p1)*r2*sin(p2);
b=r1*sin(p1)*r2*cos(p2)+r1*cos(p1)*r2*sin(p2);
if(fabs(a)<m){
a=0;
}
if(fabs(b)<m){
b=0;
}
if(b<0) printf("%.2lf-%.2lfi",a,fabs(b));
else printf("%.2lf+%.2lfi",a,b);
return 0;
}
//2
#include<bits/stdc++.h>
using namespace std;
int main(){
vector<vector<string> > v;
int m=3;
string s;
while(m--){
getline(cin,s);
vector<string> row;
int j=0,k=0;
while(j<s.length()){
if(s[j]=='['){
while(k++<s.length()){
if(s[k]==']'){
row.push_back(s.substr(j+1,k-1-j));
break;
}
}
}
j++;
}
v.push_back(row);
}
int n;
cin>>n;
int a,b,c,d,e;
while(n--){
cin>>a>>b>>c>>d>>e;
if(a>v[0].size()||b>v[1].size()||c>v[2].size()||d>v[1].size()||e>v[0].size()||a<1||b<1||c<1||d<1||e<1){
cout<<"Are you kidding me? @\\/@"<<endl;
continue;
}else
cout<<v[0][a-1]<<"("<<v[1][b-1]<<v[2][c-1]<<v[1][d-1]<<")"<<v[0][e-1];
}
return 0;
}
//3
#include<stdio.h>
int main(){
int n,d,r,s,t;
float e;
scanf("%d %f %d",&n,&e,&d);
int a[n];
float b[1000];
for(int i=0;i<n;i++){
r=0;
scanf("%d",&a[i]);
for(int j=0;j<a[i];j++){
scanf("%f",&b[j]);
if(b[j]<e) ++r;
}
if(r>a[i]/2){
s++;
if(a[i]>d)
t++;
}
s-=t;

}
printf("%.1f%% %.1f%%",s*100.0/n,t*100.0/n);
}
//4
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,cnt = 0;
char a[50],b[50];
double temp,sum = 0.0;
cin>>n;
for(int i=0;i<n;i++){
scanf("%s",a);
sscanf(a, "%lf",&temp);
sprintf(b, "%.2f",temp);
int flag=0;
for(int j=0;j<strlen(a);j++)
if(a[j]!=b[j]) flag=1;
if(flag || temp < -1000||temp > 1000){
printf("ERROR: %s is not a legal number\n",a);
continue;
}else{
sum += temp;
cnt++;
}
}
if(cnt==1)
printf("The average of 1 number is %.2f",sum);
else if(cnt>1)
printf("The average of %d numbers is %.2f",cnt,sum/cnt);
else
printf("The average of 0 numbers is Undefined");
return 0;
}
//5
#include<stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct{
char name[9];
int height;
} person;
int cmp(const void *a, const void *b) {
person p1=*(person *)a;
person p2=*(person *)b;
if(p1.height !=p2.height){
return p2.height-p1.height;
} else{
return strcmp(p1.name,p2.name);
}
}
void print(person *p,int num){
int i;
for(i=num/2*2-1;i>0;i-=2){
printf("%s ",p[i].name );
}
for(i=0;i<num-2;i+=2){
printf("%s ",p[i].name );
}
printf("%s",p[i].name );
}
int main(){
int n,k;
scanf("%d %d",&n,&k);
person people[n];
for(int i=0;i<n;i++){
scanf("%s %d",people[i].name,&people[i].height );
}
qsort(people,n,sizeof(person),cmp);
int remain=n-n/k*(k-1);
person *p=people;
print(p,remain);
p+=remain;
int m=0;
for(int i=0;i<k-1;i++){
if(m!=k-1){
printf("\n");
}
print(p,n/k);
m++;
p+=n/k;
}
return 0;
}

猜你喜欢

转载自www.cnblogs.com/suying/p/10416131.html