我们获得了n
个瓷砖,每个瓷砖都是给定尺寸的正方形。现在,我们获得m
不同大小的地板。 Floor是一个大小为a x b
的矩形。我们现在想用多少种类型的瓷砖来铺设给定的地板。当地板完全铺设并且没有任何瓷砖戳时,我们可以铺设给定的地板。
因此,显而易见的是,如果d x d
,大小为a x b
的图块可以平铺大小gcd(a, b) mod d = 0
。所以最简单的方法是:
每种尺寸的地板:
一个。计算gcd(a,b)
湾遍历所有瓷砖并检查其中有多少瓷砖按gcd(a,b)
但这似乎太慢了 - 我在这项任务上通过了2/3测试。复杂性似乎是O(m*n*log(size))
。
知道怎么做得更好(更快)?