1782: 和尚特烦恼8——找零钱


Time Limit: 1 Sec   Memory Limit: 128 MB

Submit: 184  

Solved: 104


Submit

Status

Web Board


Description


和尚在山上又耐不住寂寞了,嘴馋的要命,于是就拿了100块钱偷偷的下山买肉吃。和尚最爱吃红烧肘子了,但是和尚不会算数,请你帮和尚算算老板应该找他多少钱。并且和尚很懒,非得要求老板找他钱的张数是最少的。



假设老板那边有面值 50, 10,5,2,1无数张,请你帮和尚算算老板应该找他多少钱,钱张数最少是多少张。


Input


输入一个整数t,表示和尚花了t块钱。


Output


输出2个整数m和n,用空格隔开。表示老板找和尚m 块钱,最少的张数是n。


Sample Input


16


Sample Output


84 6


#include<stdio.h>
#include<string.h>
int min(int a,int b)
{
	return a>b?b:a;
}
int dp[110];
int main()
{
	int n,m,k,i,j;
	int a[6]={1,2,5,10,50};
	while(scanf("%d",&n)!=EOF)
	{
		m=100-n;
		memset(dp,0x3f3f3f,sizeof(dp));
		dp[0]=0;
		for(i=0;i<5;i++)
		{
			for(j=a[i];j<=m;j++)
			{
				dp[j]=min(dp[j],dp[j-a[i]]+1);
			}
		}
		printf("%d %d\n",m,dp[m]);
	}
	return 0;
}