[NOI2000] 瓷片项链
题目描述
原始部落用一种稀有的泥土烧制直径相同的圆瓷片并串成项链,串的时候沿瓷片的直径方向顺次连接,瓷片之间没有空隙也不重叠,一条项链至少由一个瓷片构成。
下图示出四片同样大小的瓷片串接所成的项链,其总长为单个瓷片直径的四倍。

每个烧制的瓷片厚度是一定的,直径 DDD 和所用泥土的体积 VVV 有以下关系:
D={0.3V−V0V>V00V≤V0D = \begin{cases} 0.3\sqrt{V-V_0} & V > V_0 \cr 0 & V \le V_0 \end{cases}D={0.3V−V00V>V0V≤V0
其中 V0V_0V0 为烧制每一片的损耗,单位与 VVV 相同。当用料小于等于 V0V_0V0 时,不能烧制成瓷片。
例: $V_总 = 10,V_0 = 1 ,若烧制成一片瓷片,,若烧制成一片瓷片,,若烧制成一片瓷片, V = V_总= 10,D = 0.9 $。如果把泥土均分成 222 份,每份泥土的体积为 $V = \frac{V_总}{2} = 5 $,单个瓷片的直径为 $ D’ = 0.3 \times \sqrt{5-1} =0.6 $ ,串起来的总长为 1.21.21.2 。
给定了泥土的总体积和烧制单个瓷片的损耗,烧制的瓷片数不同,能够得到的项链总长度也不相同,请计算烧制多少个瓷片能使所得到的项链最长。
输入格式
共两行,每一行仅包含一个整数。
第一行的数字为泥土总体积 $ V_总$ ( $ 0 < V_总 < 60000 $ ),第二行为烧制单个瓷片的损耗 V0V_0V0 ($ 0 < V_0 < 600 $)。
输出格式
共一行,一个整数。
该整数为能获得最长项链而烧制的瓷片数。如果不能烧制成瓷片或者最优解不唯一(存在两个或者两个以上方案均能获得最长项链),输出 0。
样例 #1
样例输入 #1
48
7
样例输出 #1
3
样例 #2
样例输入 #2
8
5
样例输出 #2
1
Scratch实现

后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容
用Scratch图形化工具信奥P5753普及组提高 NOI2000 瓷片项链&spm=1001.2101.3001.5002&articleId=142338571&d=1&t=3&u=82ca7348f0be44d0a639b70c164e8f01)
497

被折叠的 条评论
为什么被折叠?



