#P1210. 2023.04.22-游戏开发-第四题

2023.04.22-游戏开发-第四题

No testdata at current.

题目内容

在游戏的开发过程中,通常会将许多小贴图组合成一张大图集,从而合并draw call优化性能。 提供n张正方形贴图,每张贴图的边长都是2的幂次,你需要将这n张贴图全部填充到一张尺寸为1024*1024的图集中。如果图集容纳不下所有的贴图,你可以适当缩小一些美术认为不重要的贴图的尺寸,使得所有的贴图都能填充进图集中,需要保证贴图缩小后的边长依旧是2的幂次,且缩小后的贴图边长大于等于8

输入描述

第一行输入一个正整数n (1<= n <= 1000),表示一共有n张贴图。接下来n行每行有两个正整数 w,s (8<=w<=512,w为2的幂次,0<s<100),w表示正方形贴图的边长,s表示贴图的权重,权重越大贴图越重要。

输出描述

假定图集的最终得分为sum贴图最终面积/贴图原始面积*贴图权重)。输出一个数字,表示所有填充方式中,最大的图集得分。输出结果四舍五入后保留两位小数。

样例

样例一

输入

5
512 5
512 10
512 15
512 20
128 10

输出

56.25

说明

需要将'512 5'这张贴图缩小到256 *256 才能放得下

样例一

输入

4
256 20
256 20
256 25
128 20

输出

85.00

说明 不用缩放