美文网首页
算法训练 幂方分解

算法训练 幂方分解

作者: YOLO_2a2d | 来源:发表于2019-03-07 14:33 被阅读0次

#include<iostream>

#include<stdlib.h>

#include<string.h>

using namespace std;

int a[] = { 1, 2,4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384 };

void divide(int n){

if (n == 0) return;

if (n == 1){

printf("2(0)");

return;

}

if (n == 2){

printf("2");

return;

}

int i = 14;

//找到最接近n的幂值

while (a[i] > n&&i >= 0)

i--;

printf("2");

if (i >= 2){

printf("(");

divide(i);

printf(")");

}

n -= a[i];

if (n)

printf("+");

divide(n);

}

int main(){

int N;

cin >> N;

divide(N);

// system("pause");

return 0;

}

本文纯属转载,参考链接

相关文章

  • 算法训练 幂方分解

    #include #include #include using namespace std; int a[] =...

  • 算法分析

    算法分析手段 迭代 级数求和 递归 递推方程和递推分析 猜想和验证 常用级数 幂方级数:比幂次高出一阶O(...

  • lq_xunlian_Main12(幂方分解)

    问题描述 任何一个正整数都可以用2的幂次方表示。例如: 137=27+23+20 同时约定方次用括号来表示,即ab...

  • 矩阵分解的一点总结

    1.为什么要矩阵分解 2.矩阵分解的算法 3.矩阵分解算法的应用场景 4.评价指标 ---------------...

  • 模板 | 整数快速幂 & 快速幂取模

    快速幂: 所谓的快速幂,其目的是为了快速求幂,将时间复杂度从朴素算法的降到。 假如现在要求 ,按照朴素算法,就是将...

  • 分治法的常见问题

    计算x的n次幂 朴素算法:xxx...... 分治算法: n为偶数:x的n/2次幂*x的n/2次幂 n为奇数:x的...

  • 二进制系统

    二进制转十进制 技巧就是通过基数把进制进行分解,用 JS语法来分解,其中**为幂符号,并且0的幂都是1; 二进制的...

  • 匹配追踪算法(MatchingPursuit)原理

    MP算法原理 信号稀疏分解与MP算法信号稀疏分解的思想是:将一个信号分解成字典库(dictionary或codeb...

  • 《阿何写作训练营》预习笔记

    预热课1:写作的分解训练 “专业的训练必然包含大量分解练习,而完整的训练是把所有分解项目配合起来的训练。”比如跑步...

  • 分解机(Factorization Machines)推荐算法

    1 分解机(Factorization Machines)推荐算法原理 1.1 分解机(Factorization...

网友评论

      本文标题:算法训练 幂方分解

      本文链接:https://www.haomeiwen.com/subject/rzkcpqtx.html