목록ROOT (70)
Mafa Dev
2차원 격자공간에 두 개의 꼭짓점 좌표로 표현되는 직사각형이 있다. 직사각형은 아래와 같이 왼쪽 아래 꼭짓점 좌표 (x,y) 와 오른쪽 위 꼭짓점 좌표 (p,q) 로 주어진다. 이 문제에서 모든 직사각형은 두 꼭짓점의 좌표를 나타내는 4개의 정수 x,y,p,q 로 표현된다. 단 항상 x < p , y < q 이다. 예를 들어 위 그림에 제시된 직사각형이라면 아래와 같이 표현된다. 3 2 9 8 두 개의 직사각형은 그 겹치는 부분의 특성에 따라 다음 4가지 경우로 분류될 수 있다. 먼저 두 직사각형의 겹치는 부분이 직사각형인 경우이다. 아래 그림(a)는 공통부분이 직사각형인 경우의 3가지 예를 보여준다, 또는 겹치는 부분이 아래 그림 (b)와 같이 선분이 될 수도 있고, 그림 (c)와 같이 점도 될 수 있..
구조체도 배열처럼 여러 개의 데이터를 그룹으로 묶어서 하나의 자료형으로 정의하고 사용하는 자료형입니다. 배열은 같은 자료형만을 그룹으로 묶을 수 있지만 , 구조체는 서로 다른 자료형을 그룹으로묶을 수 있으므로 복잡한 자료 형태를 정의하는 데 유용하게 사용합니다. 구조체 변수의 선언 방법 ① ② ③ struct employee{ char name[10]; int year; int pay; }; struct employee Mafa; struct employee{ char name[10]; int year; int pay; } Mafa; struct { char name[10]; int year; int pay; } Lee; ①은 구조체 선언 을 한 후에 변수를 선언하는 방법이고, ②는 구조체와 구조체 변수..
꼭지점(vertex)의 수 n 이 주어질 때 임의의 점에서 다른 점으로 바로 가는 길이 존재할 때 선의 수(edge) 을 구하는 것이 문제입니다. #include int arrResult[1002] = {0,}; int main() { int n = 0; for(int i=2;i
본체 모니터 프린터 라우터가소비하는 전류를 측정하는 문제입니다. #include int main() { double computer,prin; double roug; double sum=0; double sum1=0; double sum2=0; int sum3=0; int sum4=0; scanf("%lf %lf %lf",&computer,&prin,&roug); sum = computer * 2.5; sum1 = prin * 2.0; sum2 = roug * 0.5; sum3 = (sum+sum1+sum2)*2; sum4 = sum3%10; if(sum4!=0) sum4=10; sum3 = sum3-(sum3%10); sum3 = sum3+sum4; printf("%d", sum3); return 0;..
배열은 배열 요소들을 2차원 , 3차원으로 만들어서 2차원 배열 , 3차원 배열을 나타낼 수 있습니다. 즉 2차원 배열은 배열의 배열이고 , 3차원 배열은 배열의 배열의 배열입니다. 2차원 이상의 배열을 다차원 배열이라고 합니다. 다차원 배열의 선언 2차원 배열은 배열의 배열이므로 선언 방법이 1차원 배열과 같은 형식이면서 늘어난 만큼 []를 더 추가하고 그 안에 배열의 크기를 넣어줍니다. 자료형 배열 이름 [배열 크기][배열 크기] 2차원 배열은 차수가 2므로 2개의 배열 크기가 필요합니다. 배열의 구조를 논리적으로 표현 할 때 첫번째 배열의 크기는 행의 개수가 되고 두번째 배열 크기는 열의 개수가 됩니다. 따라서 첫번째 배열 크기에 대한 인덱스는 행번호가 되고 두번째 배열크기에 대한 인덱스는 열의 크..
[문제] 주어진 시각에서 45분 전의 시각을 출력하는 문제입니다. 2단계의 문제이다보니 확실히 UVA문제보다 쉽습니다. 먼저 간단하게 앞에 적어준 분을 초로 바꿔주고 45분을 뺀후 다시 분과 초로 바꿔주는 것이 기본입니다. 그런데 시간이 0시일때 문제가되는데 if문으로 0시일때는 시를 24로 분을 60+y값으로 해주어서 풀었습니다. 소스입니다. #include int main() { int x,y; int sum=0; int sum1=0; int sum2=0; int sum3=0; int sum4=0; scanf("%d %d",&x,&y); if(x==0 && y/60==0) { x=24; y=y+60; sum = (60*x)+y; sum1= sum-45; sum2= sum1/60; sum3= sum1%..