PAT_B_1077_浜掕瘎鎴愮哗璁$畻
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT_B_1077_浜掕瘎鎴愮哗璁$畻相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e8%a6%81%e6%b1%82' title='瑕佹眰'>瑕佹眰 瓒呰繃 缁熻 highlight 鏍煎紡 flag void als 鎬濊矾
棰樼洰鎻忚堪锛?/span>
鍦ㄦ禉澶х殑璁$畻鏈轰笓涓氳涓紝缁忓父鏈変簰璇勫垎缁勬姤鍛婅繖涓幆鑺傘€備竴涓粍涓婂彴浠嬬粛鑷繁鐨勫伐浣滐紝鍏朵粬缁勫湪鍙颁笅涓哄叾琛ㄧ幇璇勫垎銆傛渶鍚庤繖涓粍鐨勪簰璇勬垚缁╂槸杩欐牱璁$畻鐨勶細鎵€鏈夊叾浠栫粍鐨勮瘎鍒嗕腑锛屽幓鎺変竴涓渶楂樺垎鍜屼竴涓渶浣庡垎锛屽墿涓嬬殑鍒嗘暟鍙栧钩鍧囧垎璁颁负 G?1?? 锛涜€佸笀缁欒繖涓粍鐨勮瘎鍒嗚涓?G?2?? 銆傝缁勫緱鍒嗕负 (G?1?? +G?2?? )/2锛屾渶鍚庣粨鏋滃洓鑸嶄簲鍏ュ悗淇濈暀鏁存暟鍒嗐€? 鏈灏辫姹備綘鍐欎釜绋嬪簭甯姪鑰佸笀璁$畻姣忎釜缁勭殑浜掕瘎鎴愮哗銆? 杈撳叆鏍煎紡锛? 杈撳叆绗竴琛岀粰鍑轰袱涓鏁存暟 N锛?gt; 3锛夊拰 M锛屽垎鍒槸鍒嗙粍鏁板拰婊″垎锛屽潎涓嶈秴杩?100銆傞殢鍚?N 琛岋紝姣忚缁欏嚭璇ョ粍寰楀埌鐨?N 涓垎鏁帮紙鍧囦繚璇佷负鏁村瀷鑼冨洿鍐呯殑鏁存暟锛夛紝鍏朵腑绗?1 涓槸鑰佸笀缁欏嚭鐨勮瘎鍒嗭紝鍚庨潰 N−1 涓槸鍏朵粬缁勭粰鐨勮瘎鍒嗐€傚悎娉曠殑杈撳叆搴旇鏄?[0,M] 鍖洪棿鍐呯殑鏁存暟锛岃嫢涓嶅湪鍚堟硶鍖洪棿鍐咃紝鍒欒鍒嗘暟椤昏蹇界暐銆傞鐩繚璇佽€佸笀鐨勮瘎鍒嗛兘鏄悎娉曠殑锛屽苟涓旀瘡涓粍鑷冲皯浼氭湁 3 涓潵鑷悓瀛︾殑鍚堟硶璇勫垎銆? 杈撳嚭鏍煎紡锛? 涓烘瘡涓粍杈撳嚭鍏舵渶缁堝緱鍒嗐€傛瘡涓緱鍒嗗崰涓€琛屻€? 杈撳叆鏍蜂緥锛? 6 50 42 49 49 35 38 41 36 51 50 28 -1 30 40 36 41 33 47 49 30 250 -25 27 45 31 48 0 0 50 50 1234 43 41 36 29 42 29 杈撳嚭鏍蜂緥锛? 42 33 41 31 37 39
鏍稿績鎬濊矾锛?/span>
// 鎶婃垚缁╄褰曞湪Score[] 鏁扮粍涓紝Score[0] 浠h〃鑰佸笀鐨勬墦鍒? // 缁熻瀛︾敓鐨勬湁鏁堟垚缁╀釜鏁板拰鏈€楂樻渶浣庡垎 // 鏈€鍚庤繍绠楃殑鏃跺€欏噺鍘讳袱涓渶鍊硷紝鏈夋晥鎴愮哗涓暟涔熻鍑忓幓2 printf("%d\n",(int)(((((sum-min_s-max_s)*1.0/num)+Score[0])*1.0/2)+0.5));
鏈汉AC浠g爜锛?/span>
// 1077 浜掕瘎鎴愮哗璁$畻 # include <stdio.h> # define Max 101 int main(void) int N, len, num=0, i; int flag = -1; // flag鏍囪涓虹涓€涓湁鏁堢殑瀛︾敓鎴愮哗 int M, sum=0, min_s, max_s; int Score[Max] = 0; scanf("%d %d",&N,&M); len = N; while (len > 0) sum = 0.0; num = 0; flag = -1; // 姣忔閮借鍒濆€间负-1 // 姣忕粍杩涜鍗曠嫭閬嶅巻锛屾壘鍑烘湁鏁堟垚缁╀釜鏁帮紝鎵惧埌鏈€澶ф渶灏忓€? for (i=0; i<N; i++) // Score[0]涓鸿€佸笀璇勫垎锛屼笉鍙備笌G1璁$畻 scanf("%d",&Score[i]); // 鎵惧埌绗竴涓湁鏁堢殑瀛︾敓鎴愮哗 if (i>0 && flag==-1) if (Score[i]>=0 && Score[i]<=M) flag = 0; // 鎶婃壘鍒扮殑瀛︾敓鎴愮哗璁板綍涓哄綋鍓嶇殑鏈€澶ф渶灏忓€? if (0 == flag) // 璁板綍绗竴涓湁鏁堢殑瀛︾敓鎴愮哗 min_s = max_s = Score[i]; flag = 1; // 缁熻鏈夋晥鍒嗘暟 if (i>0 && Score[i]>=0 && Score[i]<=M) sum += Score[i]; // 鏈夋晥鍒嗘暟鐨勪釜鏁? num++; // 鏇存柊鏈€澶ф渶灏忓€? if (Score[i] > max_s) max_s = Score[i]; if (Score[i] < min_s) min_s = Score[i]; num -= 2; // 鎬绘垚缁╄绠? // 瀛︾敓鎴愮哗涓哄幓鎺夋渶澶ф渶灏忓€肩殑骞冲潎鍊? // 鎬绘垚缁╀负瀛︾敓鏈€缁堟垚缁╁拰鑰佸笀鏈€缁堟垚缁╁潎鍊? printf("%d\n",(int)(((((sum-min_s-max_s)*1.0/num)+Score[0])*1.0/2)+0.5)); len--; // 璁$畻涓嬩竴缁? return 0;
RRR
以上是关于PAT_B_1077_浜掕瘎鎴愮哗璁$畻的主要内容,如果未能解决你的问题,请参考以下文章