07:合影效果
- 總時間限制:
- 1000ms
- 內存限制:
- 65536kB
- 描述
-
小雲和朋友們去爬香山,為美麗的景色所陶醉,想合影留念。如果他們站成一排,男生全部在左(從拍照者的角度),並按照從矮到高的順序從左到右排,女生全部在右,並按照從高到矮的順序從左到右排,請問他們合影的效果是什么樣的(所有人的身高都不同)?
- 輸入
-
第一行是人數n(2 <= n <= 40,且至少有1個男生和1個女生)。
后面緊跟n行,每行輸入一個人的性別(男male或女female)和身高(浮點數,單位米),兩個數據之間以空格分隔。 - 輸出
- n個浮點數,模擬站好隊后,拍照者眼中從左到右每個人的身高。每個浮點數需保留到小數點后2位,相鄰兩個數之間用單個空格隔開。
- 樣例輸入
-
6 male 1.72 male 1.78 female 1.61 male 1.65 female 1.70 female 1.56
- 樣例輸出
-
1.65 1.72 1.78 1.70 1.61 1.56
- 來源
- 醫學部 2010 期末試題 李雁章
- 查看
- 提交
- 統計
- 提問
#include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #include<string> #include<cmath> using namespace std; struct jgt{ char xb[10]; float sg; }a[10001]; char s[10001]; int main() { int l,n,m,k=0; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i].xb>>a[i].sg; } for(int i=1;i<=n-1;i++) { for(int j=i;j<=n;j++) { if(a[i].sg>a[j].sg) { swap(a[i],a[j]); } } } for(int i=1;i<=n;i++) { if(a[i].xb[0]=='m') { printf("%.2f ",a[i].sg); } } for(int i=n;i>=1;i--) { if(a[i].xb[0]=='f') { printf("%.2f ",a[i].sg); } } return 0; }