목록algorithm (8)
Mafa Dev
프로그램 명: profit 제한시간: 1 초 물건의 원가가 a 이고 , 원가에 b % 이윤을 붙여서 정가를 정했으나 물건이 잘 팔리지 않아 정가의 c% 를 할인해서 팔았다. 이 물건을 팔았을때의 이윤을 구하여라. 입력a,b,c 가 입력으로 주어진다. (모두 자연수이고 a < 100000 , b,c < 100) 출력이윤을 소수 첫째 자리에서 반올림하여 출력한다. 손해를 볼 경우에는 loss 를 출력한다. 입출력 예입력 100 10 10 출력 loss 입력 100 10 8 출력 1 #include int main() { double a,b,c; double d=0,e=0,f=0; scanf("%lf %lf %lf",&a,&b,&c); e=b/100; f=c/100; d= ((a+(a*e))-((a+(a*e)..
2차원 격자공간에 두 개의 꼭짓점 좌표로 표현되는 직사각형이 있다. 직사각형은 아래와 같이 왼쪽 아래 꼭짓점 좌표 (x,y) 와 오른쪽 위 꼭짓점 좌표 (p,q) 로 주어진다. 이 문제에서 모든 직사각형은 두 꼭짓점의 좌표를 나타내는 4개의 정수 x,y,p,q 로 표현된다. 단 항상 x < p , y < q 이다. 예를 들어 위 그림에 제시된 직사각형이라면 아래와 같이 표현된다. 3 2 9 8 두 개의 직사각형은 그 겹치는 부분의 특성에 따라 다음 4가지 경우로 분류될 수 있다. 먼저 두 직사각형의 겹치는 부분이 직사각형인 경우이다. 아래 그림(a)는 공통부분이 직사각형인 경우의 3가지 예를 보여준다, 또는 겹치는 부분이 아래 그림 (b)와 같이 선분이 될 수도 있고, 그림 (c)와 같이 점도 될 수 있..
꼭지점(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;..
[문제] 주어진 시각에서 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%..
UVA 10041번 문제 입니다. 가장 이동 거리를 최소화 할 수 있는 집 하나를 정하고 그 집과 다른 집들의 거리를 구하는 문제였습니다. 이동 거리를 최소화 할 수 있는 집 하나를 찾기가 가장 어려웠는데요 문제를 계속해서 풀다보니 배열들을 각각 빼 보니 최소화 할 수 있는 집을 찾는 것과 동일한 값이 나와 코팅을 해보니 Accepted가 떳네요 소스 입니다. #include #include #include int main() { int n=0; int input=0; int nod[10000]={0,}; int i=0; int j=0; int sum=0; int average=0; int i1=0; int j1=0; int temp=0; int left=0; int right=0; while(scanf..