整数变换问题
来源:互联网 发布:卫计委数据 编辑:程序博客网 时间:2024/06/05 01:59
问题描述:
关于整数i的变换f和g定义如下:f(i)=3i;g(i)=i/2。
现要求对于给定的2个整数n和m,用最少的f和g变换次数将n变换为m。
关于整数i的变换f和g定义如下:f(i)=3i;g(i)=i/2。
现要求对于给定的2个整数n和m,用最少的f和g变换次数将n变换为m。
例如,可以将整数15用4次变换将它变换为整数4:4=gfgg(15)。当整数n不可能变换为整数m时,算法应如何处理?
输入样例:
15 4
输出样例:
4
gfgg
#include<stdio.h>int m=15;int n=4;int a[100]={0};int b[100];int mincount=9999;int tempcount=0;void traceback(int t){int i;if(t==n) {if(tempcount<mincount){mincount=tempcount;for(i=1;i<=mincount;i++){b[i]=a[i];}}return;}tempcount++;if(tempcount<mincount && t>n){a[tempcount]=2;traceback(t/2);} tempcount--;tempcount++;if(tempcount<mincount && t>0 && t<n){a[tempcount]=1;traceback(t*3);}tempcount--;}int main(){traceback(m);printf("%d\n",mincount);for(int i=mincount;i>0;i--){if(a[i]==2)printf("%c",'g');elseprintf("%c",'f');}return 0;}
阅读全文
0 0
- 整数变换问题
- 1092 -- 整数变换问题
- 整数变换问题
- 整数变换问题
- 整数变换问题
- 整数变换问题-----回溯法
- 整数变换
- 整数变换
- 整数变换问题和N皇后问题解析(C语言)
- 整数的变换和量化(转)
- 基于整数变换的可逆水印总结
- 图形变换问题
- 图形变换问题
- 【t008】钱币变换问题
- 字符串变换最小问题
- 数字变换 BFS问题
- 4*4整数快速变换(包括DCT变换量化以及反DCT变换反量化)
- 基于数论变换的大整数乘法Java代码实现
- Js、jQuery、angular隔行换色
- [编译链接装载系列]之聊聊目标文件与ELF格式
- SSH与SSM学习之SSH实现CRM练习11——文件上传
- python enumerate用法总结
- Python-ML中最常用的5张速查表
- 整数变换问题
- java基础之变量覆盖?
- 开源数据处理框架Spark
- Java 涨知识
- c语言基础知识
- nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
- POJ-3468 A Simple Problem with Integers (线段树 入门题 区间修改 区间查询)
- 做AI必须要知道的十种深度学习方法
- Linux基础之常用命令