ACM 给你一个整数Q,找出一个最小的正整数N,使得它的各位之积等于Q,如果不存在,请输出-1 输入:第一行为组数,

原创 2018年04月16日 18:52:51
				#include<iostream>
				#include<stdio.h>
				
				using namespace std;
				
				bool smallten(int data)
					{
						if((data<10)&&(data>1))
							return 1;
						else
							return 0;
					}
					
				
				int main()
				{
					int T;
					int Q;
					
					cin>>T;
					
					for(int i=0;i<T;i++)
					{
						cin>>Q;
						int a[8]={9,8,7,6,5,4,3,2};
						int j=0;
						int b[10000];
						
						if(Q == 1)
						{
							cout<<Q;
						}
						if(smallten(Q))
						{
							cout<<Q<<endl;
						}
						
						else
						{
							for(int i=0;i<8;i++)
							{
								while((Q%a[i]==0)&&Q)
								{
									b[j]=a[i];
									Q=Q/a[i];
									j++;
									i=0; 
								}
							}
							if(Q == 1)
							{
								for(int k=j-1;k>=0;k--)
								{
									cout<<b[k];
								}
								cout<<endl;
							}
							else
								cout<<-1<<endl;
						}
					}
				}
	

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_39641975/article/details/79964518

数字序列中的最大差和最小差对数

题目: 小Q今天在上厕所时想到了这个问题:有n个数,两两组成二元组,差最小的有多少对呢?差最大呢? 例如: 输入 6   45 32 45 16 6 5   输出 1  2 ...
  • u011707827
  • u011707827
  • 2016-09-02 23:07:55
  • 1222

NOI(1.9编程基础之顺序查找-05:最大值和最小值的差)

NOI(1.9编程基础之顺序查找-05:最大值和最小值的差)今天,我要给大家发一篇关于NOI上1.9顺序查找的博客,关于一个数组中最大值与最小值的差。 先看看题目 - 05:最大值和最小值的差 ...
  • qq_38627852
  • qq_38627852
  • 2017-05-29 19:30:30
  • 539

序列中最大的数

题目描述有这样一个序列a:a[0] = 0 a[1] = 1 a[2i] = a[i] a[2i+1] = a[i] + a[i+1]输入一个数N,求a[0] - a[n]中最大的数。a[0] = 0...
  • Gage__
  • Gage__
  • 2018-03-23 13:12:31
  • 10

BZOJ 题目1012: [JSOI2008]最大数maxnumber(线段树)

1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec  Memory Limit: 162 MB Submit: 6008  Solved: 2595 [...
  • yu_ch_sh
  • yu_ch_sh
  • 2015-09-04 01:29:33
  • 325

输入一个正整数n,输出一个最小正整数m,使得m的各位乘积等于n

/* 1.:编写一个函数func,输入一个正整数n,返回一个最小的正整数m,使得m的各位乘积等于n,例如输入100.输出455,输入36,输出49 */#if 0 int func(int n) ...
  • liyf__88
  • liyf__88
  • 2017-08-13 09:14:09
  • 479

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1。

输入一个正整数n,返回一个最小正整数m(m至少是2位数),使得m的各位乘积等于n,例如输入36,输出49,输入100,输出455,对于某个n不存在这样的m,请返回-1。 package hope201...
  • u014657292
  • u014657292
  • 2014-11-01 13:33:17
  • 1413

51Nod1062 序列中最大的数

1062 序列中最大的数 题目来源: Ural 1079 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 有这样一个序列a: a[0] = ...
  • gtuif
  • gtuif
  • 2017-09-06 23:03:12
  • 63

51nod-1062 序列中最大的数

1062 序列中最大的数 题目来源: Ural 1079 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题  收藏  关注 ...
  • qq_33951440
  • qq_33951440
  • 2016-10-28 12:33:05
  • 261

给定一个正整数x,找到一个最小的正整数y,使得y的每一位相乘,最后值等于x

题目:给定一个正整数x,找到一个最小的正整数y,使得y的每一位相乘,最后值等于x 思路:对x进行分解成多个数字相乘,然后把这些数字从小打到排序,最后组装成数字就得到最小的正整数y。 特殊情况:...
  • liuyi1207164339
  • liuyi1207164339
  • 2016-04-17 11:06:45
  • 864

一个很短的问题

题目描述   找到最小的正整数Q,使得Q的各位数的乘积等于N 输入   一个数 N (0...
  • littlenoob
  • littlenoob
  • 2017-03-17 16:38:02
  • 140
收藏助手
不良信息举报
您举报文章:ACM 给你一个整数Q,找出一个最小的正整数N,使得它的各位之积等于Q,如果不存在,请输出-1 输入:第一行为组数,
举报原因:
原因补充:

(最多只允许输入30个字)