#include <stdio.h> int dot[3][2]; double ruler(double len); int main(void) { int i, length; double result; scanf(" %d", &length); //줄자의 길이 입력 for(i=0; i<3; i++) //점의 위치 입력 scanf(" %d %d", &dot[i][0], &dot[i][1]); result=ruler((double)length); printf("%.1f", result); return 0; } double ruler(double len) { int i, j, k; double mid; for(i=0; i<3; i++) { if(dot[i][0]!=dot[i][1]) //점이 겹치지 않울 때 { mid=(double)(dot[i][0]+dot[i][1])/2.0; //점이 겹쳐지는 중점 위치 if(mid<(len-mid)) //중점을 기준으로 왼쪽보다 오른쪽이 더 길 때 { for(j=i+1; j<3; j++) //중점을 기준으로 줄자를 접고, 시작 위치는 0으로 { for(k=0; k<2; k++) { if(dot[j][k]>mid) //중점보다 오른쪽에 있거나 같은 점 dot[j][k]=len-dot[j][k]; else //중점보다 왼쪽에 있는 점 dot[j][k]+=len-(mid*2); } } len-=mid; //중점을 기준으로 접은 후 줄자의 길이 } else //중점을 기준으로 오른쪽보다 왼쪽이 더 길 때 { for(j=i+1; j<3; j++) //중점을 기준으로 줄자 접기 { for(k=0; k<2; k++) { if(dot[j][k]>mid)//중점보다 오른쪽에 있는 점 dot[j][k]=mid-(dot[j][k]-mid); //중점보다 왼쪽에 있는 점은 이동할 필요가 없다 } } len=mid; //중점을 기준으로 접은 후 줄자의 길이 } } } return len; }
2018.01.06 11:07
정올 - 실력키우기 - 줄자접기(1112)
조회 수 360 추천 수 0 댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. | 좋은아빠되기 | 2019.02.15 | 299 |
공지 | 키보드 화살표값 출력 | 좋은아빠되기 | 2016.11.19 | 1079 |
공지 | 원하는 좌표에 값 출력하기 | 좋은아빠되기 | 2016.11.19 | 2394 |
공지 | Python(파이썬) 학습 자료 PDF 1 | 좋은아빠되기 | 2014.12.10 | 10313 |
공지 | dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) | 좋은아빠되기 | 2014.06.07 | 4719 |
공지 | DEV-C++ 기본 코드 | 좋은아빠되기 | 2013.06.19 | 8270 |
공지 | 무료 C++ 컴파일러(윈도우용) DEV-C++ | 좋은아빠되기 | 2013.06.18 | 18956 |
공지 | 이클립스 C++ 설치 파일들 | 좋은아빠되기 | 2013.06.18 | 37861 |
510 | 정올 배열2 형성평가5 | 정승준 | 2018.11.24 | 37 |
509 | ddd | 선우 | 2016.03.05 | 44 |
508 | 정올 반복제어문3 형성평가5(반대) | 정승준 | 2018.08.25 | 45 |
507 | 정올 반복제어문3 형성평가7(반대) | 정승준 | 2018.08.25 | 46 |
506 | 정올 반복제어문3 형성평가8 | 정승준 | 2018.08.25 | 48 |
505 | 정올 반복제어문3 형성평가6(비슷 2) | 정승준 | 2018.08.25 | 49 |
504 | 정올 반복제어문3 형성평가6(비슷 1) | 정승준 | 2018.08.25 | 50 |
503 | 정올 - 실전대비 - Duel(1312) | 조정미 | 2018.06.09 | 51 |
502 | 정올 반복제어문3 형성평가6 | 정승준 | 2018.08.25 | 51 |
501 | 정올 반복제어문3 형성평가1 | 정승준 | 2018.08.25 | 52 |
500 | 정올 반복제어문3 형성평가9 | 정승준 | 2018.08.25 | 52 |
499 | 정올 배열2 형성평가9 | 정승준 | 2018.12.01 | 55 |
498 | 정올 반복제어문3 형성평가A | 정승준 | 2018.08.25 | 56 |
497 | 정올 배열1 자가진단9(반대) | 정승준 | 2018.09.08 | 56 |
496 | 120 : 선택제어문 - 형성평가1 | adbdcd123 | 2018.08.25 | 57 |
495 | 정올 배열1 자가진단6 | 정승준 | 2018.09.01 | 57 |
494 | 정올 반복제어문3 형성평가4 | 정승준 | 2018.08.25 | 58 |
493 | 정올 배열1 형성평가3 | 정승준 | 2018.09.08 | 61 |
492 | 정올 배열1 자가진단9(반대) | 정승준 | 2018.10.13 | 61 |
491 | 정올 배열2 형성평가5 | 정승준 | 2018.11.24 | 62 |