일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Backdoor
- 제어문
- 풀이&소스코드저작권:왕유승
- DBMS
- 리눅스 명령어
- 정보올림피아드
- 문제출저:www.dovelet.com
- if문
- C++
- 참조은요양병원
- 자료구조
- 반복문
- 배열
- 알고리즘
- 독후감
- 정보과학
- 정보영재원
- Linux
- 프로그래밍
- For문
- C
- 수학영재원
- API
- c언어
- IT
- 다중반복문
- 리눅스
- 영재교육원
- 백도어
- 독서 감상문
Archives
- Today
- Total
되는대로 살자
[C언어 기출문제&풀이]box of brick 본문
프로그램 명: box_brick
제한시간: 1 초
밥은 벽돌 쌓기놀이를 좋아한다.
"봐!! 내가 벽을 만들었어" 그는 누이 앨리스에게 이야기 했어. 그러자 누이는 "벽돌의 높이가 같아야지 제대로 된 벽이지"라고 되받았어.
밥이 곰곰 생각해보니 그녀의 말이 맞는 것 같아 높이를 같게 하기위해 벽돌을 하나하나 옮기기 시작했어.
밥은 게을러서 최소한의 벽돌을 옮겨서 같은 높이를 맞추기를 원해. 밥을 도와 줄수 있겠니?
입력
첫수는 벽돌 무더기의 수 n ( 1 <= n <= 50 ) 이고 , 다음 n 수는 각 무더기의 벽돌의 수(벽돌의 높이) hi 이다. 각 hi 는 1 에서 100 사이이다.
높이를 같이 맞출수 없는 데이터는 입력으로 주어지지 않는다.
출력
출력은 아래와 같은 형식으로 출력한다.
The minimum number of moves is k.
입출력 예
입력 6 5 2 4 1 7 5 출력 The minimum number of moves is 5.
풀이 : 각 값을 받아 평균 값을 수한 다음 그 값에 맞게되게끔 계산 한다.
소스코드
01 |
#include <stdio.h> |
02 |
|
03 |
int main() |
04 |
{ |
05 |
int sum=0,n,count=0,i,average,ar[50],temp=0; |
06 |
scanf ( "%d" ,&n); |
07 |
for (i=0;i<n;i++) |
08 |
{ |
09 |
scanf ( "%d" ,&ar[i]); |
10 |
count++; |
11 |
} |
12 |
for (i=0;i<count;i++) |
13 |
sum+=ar[i]; |
14 |
average=sum/count; |
15 |
for (i=0;i<count;i++) |
16 |
{ |
17 |
if (ar[i]>average) |
18 |
temp+=ar[i]-average; |
19 |
} |
20 |
printf ( "The minimum number of moves is %d." ,temp); |
21 |
} |
'2009~2014 > C/C++' 카테고리의 다른 글
[C언어 기출문제&풀이] 수열 (0) | 2010.11.02 |
---|---|
[C언어 기출문제&풀이] 평균 초과 백분율 (0) | 2010.11.02 |
[C언어 기출문제&풀이] 큰 시계 (0) | 2010.11.02 |
[C언어 기출문제&풀이] 반대로 출력 (0) | 2010.11.02 |
[C언어 기출문제&풀이] 최대 수 연결 (0) | 2010.11.02 |