URAL 1073 Square Country(DP)
2014-07-25 09:51
375 查看
Square Country
大意: 买一块边长为 a 的正方形地需要的钱数是 a^2, 现在输入N为钱的数目,求最少购买地的块数可以凑够N。
思路:DP,由背包思想推出来的dp[i] = min(dp[i], dp[j-i*i]+1); 方块都是由正方形组成的,所以是i*i,循环的时候也是i*i。
大意: 买一块边长为 a 的正方形地需要的钱数是 a^2, 现在输入N为钱的数目,求最少购买地的块数可以凑够N。
思路:DP,由背包思想推出来的dp[i] = min(dp[i], dp[j-i*i]+1); 方块都是由正方形组成的,所以是i*i,循环的时候也是i*i。
#include <stdio.h> #define min(a, b) ((a) > (b) ? (b) :(a)) int n; int dp[60005]; int main() { scanf("%d", &n); for(int i = 1; i <= n; ++i){ dp[i] = i; } for(int i = 1; i*i <= n; ++i){ for(int j = i*i; j <= n; ++j){ dp[j] = min(dp[j], dp[j-i*i]+1); } } printf("%d\n", dp ); return 0; }
相关文章推荐
- Ural 1073 Square Country (DP)
- Ural_1073. Square Country(DP)
- Ural 1073 Square Country (DP)
- ural 1073. Square Country(dp)
- URAL 1073 Square Country(DP)
- URAL1073——DP——Square Country
- Ural1073-Square Country
- Ural 1073 Square Country
- 【完全背包】URAL - 1073 Square Country
- ural1073 简单dp
- Ural 1073. Square Country
- 回溯法——Ural 1073 Square Country
- URAL 1073. Square Country(完全背包)
- Ural 1073 Square Country 解题报告
- URAL 1073 Square Country
- URAL 1073. Square Country
- ural 1073. Square Country
- 01背包 URAL 1073 Square Country
- 【Ural1073】 Square Country——完全背包
- ural 1073. Square Country