P1679题目链接
可以使用DP去做,当做“完全背包问题”问题来处理。
初值: f [ 0 ] = 0 f[0]=0 f[0]=0
c o s t [ ] cost[] cost[] : c o s t [ i ] = i ∗ i ∗ i ∗ i cost[i] = i*i*i*i cost[i]=i∗i∗i∗i
状态转移方程: f [ j ] = M a t h . m i n ( f [ j ] , f [ j − c o s t [ i ] ] + 1 ) f[j] = Math.min(f[j], f[j-cost[i]]+1) f[j]=Math.min(f[j],f[j−cost[i]]+1)
AC代码(Java语言描述)import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
scanner.close();
int[] f = new int[num+1];
Arrays.fill(f, (int)1e8);
f[0] = 0;
int limit = (int)Math.pow(num, 0.25);
int[] cost = new int[limit+1];
for (int i = 0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?