阶乘除法

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

2015湖南省省赛 阶乘除法 暴力相关推荐

  1. 电赛综合测评题练习(二)-(与2015年电赛综合测评要求类似)

    2015年电赛综合测评(部分要求有区别) 系列文章 T1:电赛综合测评题练习(一)-(与2013年电赛综合测评要求类似) 点击下载仿真文件1(请使用Multisim 14及以上版本打开) T2:电赛综 ...

  2. 树形DP+并查集+左偏树, HDU-5575,Discover Water Tank,2015上海现场赛D题

    只是ACM/IICPC 2015 上海区域赛的一道题.原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=5575 题目描述 N-1个木板把一个水箱划分成了N ...

  3. 2015湖南省赛 CSU 1783 :聊天止于呵呵(模拟)

    1783: 聊天止于呵呵 Submit Page      Summary      Time Limit: 5 Sec       Memory Limit: 128 Mb       Submit ...

  4. 记2015沈阳区域赛

    前记 基本确定了要去沈阳和上海打区域赛,听说苏大cp也会沈阳,于是我们的最终目标变为了压苏大. 周五 下午一点左右的飞机,本来想要早上赶概率论作业然后交到学校去,结果睡晚了,干脆就早点去了机场,然后大 ...

  5. (2015)北京区域赛总结+回忆录

    从去年7月跟着学长们入坑,到今年11月去北京比赛,一年多的时间就这样转眼度过,现在坐在电脑面前码字时大脑却一片空白,不知道从何说起.想起去年暑假的时候,每天都是8点多到实验室晚上10点回宿舍,顿顿和学 ...

  6. 浙江理工2015.12校赛-A

    孙壕请一盘青岛大虾呗 Time Limit: 5 Sec Memory Limit: 128 MB Submit: 577 Solved: 244 Description 话说那一年zstu与gdut ...

  7. 【luogu 11.8 队内赛 】【暴力】T1 Lyrith -迷宮リリス-

    Lyrith -迷宮リリス- 题面 解题思路 Code luogu 11.8 队内赛 T1 Lyrith -迷宮リリス- 题面 输入输出样例 输入 #1 12345 输出 #1 YES 34152 输 ...

  8. HDU - 5875 2016 ACM/ICPC 大连网络赛 H题 暴力

    题目链接 题意:给你一个区间l,r一直将val[l]模上val[l+1],val[l+2]...val[r],因为一个模上比前一个数小数是没有意义的,所以需要将每一个点找到右边第一个小于他的点就行. ...

  9. hdu5492(2015合肥网络赛I题)

    题意: n*m的格子,每个格子有权值,我们要从左上角走到右下角,只能向下走或者向右走,求走到终点走过的格子的方差的最小值. 思路: 被这题坑了,我还是太蠢. 我们可以暴力(∑Ai)^2,取最优就好了. ...

最新文章

  1. android studio gradle 配置copy,Mac系统配置Android Studio的gradle命令
  2. 方案计数(带修计数题/线段树)
  3. 什么是目标检测?有哪些应用?终于有人讲明白了
  4. 烦人的幻灯片(信息学奥赛一本通-T1395)
  5. 超级抖音腾讯视频V3.6.0小程序源码 前端+后端 支持视频采集和上传
  6. RBF、GRNN和PNN神经网络的深入浅出
  7. 【Java 8】教你用 Java 8中的 Optional 更优雅的判空
  8. 浅谈CSS选择器中的空格
  9. Luogu 4069 [SDOI2016]游戏
  10. 网站微信扫码登录实现步骤
  11. 网络协议介绍(NetBIOS,NETBEUI,IPX/SPX,TCP/IP)
  12. LM358芯片中文资料(搬运)
  13. this与bind(this)
  14. Photoshop去除拍摄手写笔记背景
  15. 盘点wps函数公式大全
  16. SQLServer把日期/时间数据转换为指定格式之CONVERT()函数
  17. 为知笔记-艾宾浩斯遗忘曲线复习插件
  18. 电脑开机启动项选择快捷键大全
  19. Base64在线转换工具(详解)
  20. opencv hsv(hsb)与hsl的区别

热门文章

  1. ShardingSphere-Proxy分库分表以及多租户安装使用
  2. Spring AOP与IOC
  3. 《Java: The Complete Reference》等书读书笔记
  4. ASP.NET 应用中大文件上传研究
  5. 常见 Datagrid 错误
  6. 深度分析define预处理指令
  7. Redis源码解析——前言
  8. 二维码QR Code简介及其解码实现(zxing-cpp)
  9. 【Git】git 与远程库交互
  10. 串口服务器支持多台上位机,RS485多机通信一台上位机两台下位机问题,