4097: 阶乘硬币支付

内存限制:1024 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

## 题目描述 在AtCoder国中,使用的硬币面值为1!元、2!元、...、10!元。这里,N! = 1 × 2 × ... × N。小高拥有每种面值的硬币各100枚,他要购买一件价值P元的商品,并且要**支付准确金额而不需要找零**。我们可以证明总是存在这样一种支付方式。小高至少需要使用多少枚硬币来完成支付?

输入

## 输入格式 输入整数P

输出

## 输出格式 输出所需的最少硬币数量。

样例输入 复制

6

样例输出 复制

3

提示

## 输入输出样例 ### 输入样例1 ``` 9 ``` ### 输出样例1 ``` 3 ``` ### 输入样例2 ``` 119 ``` ### 输出样例2 ``` 10 ``` ### 输入样例3 ``` 10000000 ``` ### 输出样例3 ``` 24 ``` ## 数据范围与提示 【样例说明1】 通过给出一枚(1! =) 1元硬币、一枚(2! =) 2元硬币和一枚(3! =) 6元硬币,我们可以准确支付价值9元的商品。没有使用更少硬币数量的支付方式。 【样例说明2】 我们应该使用一枚1!元硬币、两枚2!元硬币、三枚3!元硬币和四枚4!元硬币。 【数据范围】$1 ≤ P ≤ 10^7$, P是整数。 ## 题目来源 ABC208B