当前位置: 首页 > news >正文

P1679 神奇的四次方数

P1679 神奇的四次方数

题目链接:P1679 神奇的四次方数 - 洛谷

题目描述

将一个整数 $m$ 分解为 $n$ 个四次方数的和的形式,要求 $n$ 最小。例如,当 $m = 706$ 时,因为 $706 = 5^4 + 3^4$,所以有 $n = 2$。可以证明此时 $n$ 最小。

100 分解法

完全背包变形

观察数据范围 $m \leq 100,000$。

$20^4 > 100,000$,所以四次方数的范围为 $1 \sim 20$。

$dp_{i,j}$ 表示用前 $i$ 种数($1 \sim 20$)配成 $j$ 的最少个数。

初始化:

  • $w_i = i^4$
  • $dp_{i,j} = \text{INF}$
  • $dp_{0,0} = 0$

状态转移方程:

$dp_{i,j} = \min(dp_{i-1,j}, dp_{i,j-w_i} + 1)$

#include <bits/stdc++.h>
using namespace std;const int N = 21, M = 1e5 + 5;
int m, w[N], dp[N][M];int main() {cin >> m;for (int i = 1; i <= 20; i++)w[i] = i * i * i * i;memset(dp, 0x3f, sizeof(dp));dp[0][0] = 0;for (int i = 1; i <= 20; i++) {for (int j = 0; j <= m; j++) {dp[i][j] = dp[i - 1][j];if (j >= w[i])dp[i][j] = min(dp[i][j], dp[i][j - w[i]] + 1);}}cout << dp[20][m];return 0;
}

拓展知识

若将四次方数改为平方数同理,有拉格朗日四平方和定理

每个正整数均可表示为四个整数的平方和。

http://www.jsqmd.com/news/23062/

相关文章:

  • P1877 [HAOI2012] 音量调节
  • 数论导论
  • P14321 「ALFR Round 11」D Adjacent Lifting, Fewest Rounds 题解
  • 详细介绍:【Linux】进程的概念和状态
  • vscode解决中文乱码
  • Minio外网访问内网上传的预签名url的方法以及报错原因
  • 【ESP32 在线语音】星火大模型
  • RT-Thread 之互斥量使用
  • 20232419 2025-2026-1 《网络与系统攻防技术》实验三实验报告
  • 语义文本理解 BERT - MKT
  • 详细介绍:分布式任务事务框架设计与实现方案
  • FM-Fusion 利用rgbd相机 ram-GroundingDINO-sam 重建语义地图 - MKT
  • Rig 项目深度分析报告
  • 事件日志查看Windows安装软件情况
  • RT-Thread之创建线程
  • cias_voice_plyer_handle.c 解析
  • VirtualBox共享文件夹完全指南:实现Windows与Ubuntu无缝文件共享
  • 凭借Ubuntu和i.MX 6ULL开发板构建网络共享
  • WampServer下载安装教程(附安装包,图文并茂) - 指南
  • 【CI130x 离在线】FreeRTOS的流缓冲(StreamBuffer)
  • 循环
  • 《从 “被动听” 到 “主动学”:课堂听讲助力大学生思维成长》
  • 用AI批量生成产品视频!Python+Google Veo 3.1 API让电商转化率飙升
  • 关于SQLite - 世界上装机量最多的数据库
  • 模拟IIC与硬件IIIC哪个更常用?
  • 每日反思(2025_10_26)
  • 251019 NOIP 模拟赛 T2 | dp 及其优化、调整法最优解性质、数形结合
  • 常见问题解决 --- 未识别函数
  • 小作业 14(2018 北京高考文科)
  • 第六章习题