#include <stdio.h>
int num[4]={0};
int min_num(void); //시계수 찾기
int count(int min); //순서 찾기
int main(void)
{
int i, min, c;
for(i=0; i<4; i++)
scanf(" %d", &num[i]);
min=min_num();
//printf("%d", min);
c=count(min);
printf("%d", c);
return 0;
}
int min_num(void)
{
int i, j, min=10, a=4, result=0;
for(i=0; i<4; i++)
{
if(min>num[i])
{
a=i;
min=num[i];
}
else if(min==num[i])
{
if(a==3)
{
if(num[0]>num[i+1])
a=i;
}
else if(i==3)
{
if(num[a+1]>num[0])
a=i;
}
else if(num[a+1]>num[i+1])
a=i;
}
}
for(i=a; i<4; i++)
{
result=(result*10)+num[i];
}
for(i=0; i<a; i++)
{
result=(result*10)+num[i];
}
return result;
}
int count(int min)
{
int a=1111, c=1, s=2;
while(1)
{
if(a==min)
{
return c;
}
if(a%10!=0) c++;
if(a%1000==0)
{
a+=(s*100)+(s*10)+s;
//printf("======== %d c=%d \n", a, c);
}
else if(a%100==0)
{
a+=(a/100);
//printf("======== %d c=%d \n", a, c);
}
else if(a%10==0)
{
if((a/1000)==s)
s++;
a+=s;
//printf("======== %d c=%d \n", a, c);
}
else
{
a++;
}
}
}
2018.07.07 11:45
정올 - 문제은행 - 십자 카드 문제(1018) - Time Limit Exceed
조회 수 316 추천 수 0 댓글 0