2015湖南省省赛 阶乘除法 暴力

news/2024/7/5 1:54:59
阶乘除法
Time Limit:5000MS     Memory Limit:65535KB     64bit IO Format:
NBUT 1643

Description

输入两个正整数 n, m,输出 n!/m!,其中阶乘定义为 n!= 1*2*3*...*n (n>=1)。 比如,若 n=6, m=3,则 n!/m!=6!/3!=720/6=120。

是不是很简单?现在让我们把问题反过来:输入 k=n!/m!,找到这样的整数二元组(n,m) (n>m>=1)。

如果答案不唯一,n 应该尽量小。比如,若 k=120,输出应该是 n=5, m=1,而不是 n=6, m=3,因为 5!/1!=6!/3!=120,而 5<6。

Input

输入包含不超过 100 组数据。每组数据包含一个整数 k (1<=k<=10^9)。

Output

对于每组数据,输出两个正整数 n 和 m。无解输出"Impossible",多解时应让 n 尽量小。

Sample Input

120
1
210

Sample Output

Case 1: 5 1
Case 2: Impossible
Case 3: 7 4

Hint




一开始写搓了 暴力T了一发 以为不可以 结果就是暴力....

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#include <iomanip>
#include <math.h>
#include <map>
using namespace std;
#define FIN     freopen("input.txt","r",stdin);
#define FOUT    freopen("output.txt","w",stdout);
#define INF     0x3f3f3f3f
#define INFLL   0x3f3f3f3f3f3f3f
#define lson    l,m,rt<<1
#define rson    m+1,r,rt<<1|1
typedef long long LL;
typedef pair<int,int> PII;LL k;
LL ans1;
LL ans2;int main()
{//FINint cas = 1;while(~scanf("%I64d", &k)){if(k == 1){printf("Case %d: Impossible\n", cas++);continue;}LL i, j;int flag = 0;for(i = 2;i*i <= k; i++)  {LL p = i;for(j = i+1;; j++)  {p *= j;if(p == k)  {flag = 1;ans1 = j;ans2 = i;break;}if(p > k)break;}if(flag)break;}if(flag)  printf("Case %d: %I64d %I64d\n", cas++, ans1, ans2-1);else  printf("Case %d: %I64d %I64d\n", cas++, k, k-1);}return 0;}

  

转载于:https://www.cnblogs.com/Hyouka/p/5774839.html


http://lihuaxi.xjx100.cn/news/242648.html

相关文章

学习UI设计能做什么

UI设计这个岗位对于目前的很多企业来说是供不应求的&#xff0c;很多刚培训完UI设计的小伙伴&#xff0c;都不知道该如何定位自己的职能岗&#xff0c;那么学习UI设计能做什么呢?来看看下面小编的详细介绍就知道了。 学习UI设计能做什么? 1、图形设计/界面设计 软件产品的产品…

站长用实际体验评测六大CDN服务商

作者/咖啡 咖啡无厘头博客站长 今天给大家带来的是博主亲自体验过的CDN&#xff0c;做一次评测&#xff0c;在此期间&#xff0c;博主赔了不少老婆本进去了…… 花了无数冤枉钱&#xff0c;然后今天我就告诉大家各大CDN服务商的 服务、质量做一次评测&#xff01;看看到底哪家C…

trogan连接不上_解决连接不上网(Connection not connected).doc

解决连接不上网(Connection not connected).doc解决连接不上网(Connection not connected)The computer doesnt connect to broadband and has a large collection of code problemsSome broadband connection error handlingBroadband connection error 691 (denied access du…

mongodb Capped Collections 固定集合

特点 像队列&#xff0c;插入的效率很高&#xff0c;size大小固定&#xff08;还可以指定max限制文档个数&#xff09;&#xff0c;自动按照插入的顺序返回文档不能从capped集合中删除文档&#xff0c;只能整个集合一块删除不能sharding使用 When creating a capped collection…

学习java技术如何保持良好的心态

想要学好java技术&#xff0c;一定要保持一个良好的心态去学习&#xff0c;首先一定是要自己感兴趣的&#xff0c;很少有人对这个不重视&#xff0c;但熟不知心态决定命运&#xff0c;有一个良好的学习心态&#xff0c;在Java的学习之路上也是必不可少。那么学习java技术如何保…

JAVASCRIPT函数式编程

1.匿名函数我们将首先介绍匿名函数。一个匿名函数就是一个没有名字的函数。你可以认为他们是一次性函数。当你只需要用一次某个函数式&#xff0c;他们就特别有用。通过使用匿名函数&#xff0c;没有必要把函数一直放在内存中&#xff0c;所以使用匿名函数更加有效率。 例Examp…

Openstack组件实现原理 — Keystone认证功能

前言Keystone实现始终围绕着Keystone所实现的功能来展开&#xff0c;所以在理解其实现之前&#xff0c;建议大家尝试通过安装Keystone这一个过程来感受Keystone在Openstack架构中所充当的角色。下面给出了Keystone-M的安装过程。Keystone安装列表Openstack组件部署 — Overview…

java hanoi_Hanoi问题java解法

用什么语言解法都差不多&#xff0c;思路都是一样&#xff0c;递归&#xff0c;这其中只要注重于开始和结果的状态就可以了&#xff0c;对于中间过程&#xff0c;并不需要深究。(我细细思考了一下&#xff0c;还是算了。_)代码其实很简单注重的是思路。问题描述&#xff1a;有一…