hdu 5308 (2015多校第二场第9题)脑洞模拟题,无语
题目链接:http://acm.hdu.edu.cn/listproblem.php?vol=44
题意:给你n个n,如果能在n-1次运算之后(加减乘除)结果为24的输出n-1次运算的过程,如果不能输出-1。
思路:乍看起来,没什么规律,但是可以想象的是(n+n+n+n)/n=4,(n+n+n+n+n+n)/n=6,(n-n)*n*n*·····*n=0所以在n大于15的时候结果基本是固定的,只要对小于15的数一一输出就行(但是这题真是无语,算这种题目真是累,脑洞啊~~)
代码:
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <cstring>
#include <iostream>
#include <queue>
#include <algorithm>
#include <vector>
using namespace std;
#define LL __int64 int main()
{
int n,i;
while(~scanf("%d",&n))
{
if(n<)
printf("-1\n");
else if(n==)
{
printf("1 * 2\n");
printf("5 + 3\n");
printf("6 + 4\n");
}
else if(n==)
{
printf("1 / 2\n");
printf("6 / 3\n");
printf("4 - 7\n");
printf("5 * 8\n");
}
else if(n==)
{
printf("1 + 2\n");
printf("7 + 3\n");
printf("8 + 4\n");
printf("9 + 5\n");
printf("10 - 6\n");
}
else if(n==)
{
printf("1 / 2\n");
printf("3 * 4\n");
printf("9 - 8\n");
printf("5 + 6\n");
printf("10 / 11\n");
printf("12 * 7\n");
}
else if(n==)
{
printf("1 - 2\n");
printf("9 * 3\n");
printf("10 * 4\n");
printf("11 * 5\n");
printf("12 + 6\n");
printf("13 + 7\n");
printf("14 + 8\n");
}
else if(n==)
{
printf("4 / 5\n");
printf("6 / 7\n");
printf("8 / 9\n");
printf("1 + 2\n");
printf("13 + 3\n");
printf("14 - 10\n");
printf("15 - 11\n");
printf("16 - 12\n");
}
else if(n==)
{
printf("1 / 2\n");
printf("3 / 4\n");
printf("5 / 6\n");
printf("7 / 8\n");
printf("9 + 10\n");
printf("11 + 12\n");
printf("16 + 13\n");
printf("17 + 14\n");
printf("18 + 15\n");
}
else if(n==)
{
printf("1 + 2\n");
printf("3 / 4\n");
printf("5 / 6\n");
printf("12 + 13\n");
printf("15 + 14\n");
printf("7 - 8\n");
printf("17 * 9\n");
printf("18 * 10\n");
printf("19 * 11\n");
printf("20 + 16\n");
}
else if(n==)
{
printf("1 + 2\n");//
printf("13 / 3\n");//
printf("14 * 4\n");//
printf("5 - 6\n");//
for(i=;i<;i++)
printf("%d * %d\n",i,i+);
printf("15 + 22\n");
}
else if(n==)
{
printf("1 + 2\n");//
printf("14 / 3\n");//
printf("4 / 5\n");//
printf("6 - 16\n");//
printf("15 * 17\n");//
printf("7 - 8\n");//
for(i=;i<;i++)
printf("%d * %d\n",i,i+);
printf("18 + 24\n");
} else if(n==)
{
printf("1 / 2\n");//
printf("3 / 4\n");//
printf("5 - 15\n");//
printf("17 - 16\n");//
printf("6 + 7\n");//
printf("19 / 8\n");//
printf("20 * 18\n");//
printf("9 - 10\n");//
for(i=;i<;i++)
printf("%d * %d\n",i,i+);
printf("21 + 26\n");
}
else
{
printf("1 + 2\n");
printf("3 + 4\n");
printf("5 + 6\n");
printf("7 + 8\n");
printf("%d + 9\n",n+);
printf("%d / 10\n",n+);
printf("%d / 11\n",n+);
printf("%d / 12\n",n+);
printf("%d / 13\n",n+);
printf("%d * %d\n",n+,n+);
printf("%d * %d\n",n+,n+);
printf("%d * %d\n",n+,n+);
printf("14 - 15\n");
int now=n+;
for(i=;i<=n;i++)
{
printf("%d * %d\n",i,now);
now++;
}
printf("%d + %d\n",n+,now);
}
}
return ;
}
hdu 5308 (2015多校第二场第9题)脑洞模拟题,无语的更多相关文章
- HDU 5308 I Wanna Become A 24-Point Master(2015多校第二场)
I Wanna Become A 24-Point Master Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 ...
- hdu 5305 Friends(2015多校第二场第6题)记忆化搜索
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5305 题意:给你n个人,m条关系,关系可以是online也可以是offline,让你求在保证所有人on ...
- hdu 5301 Buildings (2015多校第二场第2题) 简单模拟
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5301 题意:给你一个n*m的矩形,可以分成n*m个1*1的小矩形,再给你一个坐标(x,y),表示黑格子 ...
- HDU 5301 Buildings(2015多校第二场)
Buildings Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Tota ...
- HDU 5303 Delicious Apples (2015多校第二场 贪心 + 枚举)
Delicious Apples Time Limit: 5000/3000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Other ...
- hdu 5288||2015多校联合第一场1001题
pid=5288">http://acm.hdu.edu.cn/showproblem.php?pid=5288 Problem Description OO has got a ar ...
- 2019牛客多校第二场 A Eddy Walker(概率推公式)
2019牛客多校第二场 A Eddy Walker(概率推公式) 传送门:https://ac.nowcoder.com/acm/contest/882/A 题意: 给你一个长度为n的环,标号从0~n ...
- hdu 5294 Tricks Device(2015多校第一场第7题)最大流+最短路
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5294 题意:给你n个墓室,m条路径,一个人在1号墓室(起点),另一个人在n号墓室(终点),起点的那 ...
- 2014多校第二场1011 || HDU 4882 ZCC Loves Codefires (贪心)
题目链接 题意 : 给出n个问题,每个问题有两个参数,一个ei(所要耗费的时间),一个ki(能得到的score).每道问题需要耗费:(当前耗费的时间)*ki,问怎样组合问题的处理顺序可以使得耗费达到最 ...
随机推荐
- Struts2笔记1:--Struts2原理、优点、编程流程、6大配置文件以及核心配置文件struts.xml
Struts2原理(底层使用的是Servlet的doFilter方法): Struts2优点: 第一个Struts程序: 在开发Struts程序之前,首先要导入额外的jar包,基本需求的是14个jar ...
- Shell-脚本只能运行1次
用空文件进行判断 path=`pwd` if [ -f ${path}/.runned ]; then { echo "This script can only execute once! ...
- souce insight出错 There was an error opening project
souce insight出错 There was an error opening project: "...": Options->Preferences->Fol ...
- SELinux 入门【转】
一.前言 安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统.SELinux 主要由美国国 ...
- windows 下的一些常用命令提示符
windows下dos命令窗口输入 netstat -ano即可查看端口使用情况, 如果要查看指定端口是否被占用 使用命令netstat -ano|findstr 端口号, 例如要查看8080端口号是 ...
- AdvStringGrid 垂直居中 、水平居中
官网faq,解答: 结果:
- java解析Xml格式的字符串
最近在工作中,需要调别的接口,接口返回的是一个字符串,而且内容是xml格式的,结果在解析json的时候报错,最终修改了接口的返回方式,以Map返回, 才得以接收到这个xml的字符串,然后通过dom4j ...
- const分别在C和C++语言里的含义和实现机制
const的含义 简单地说:const在c语言中表示只读的变量,而在c++语言中表示常量. C语言 const是constant的缩写,是恒定不变的意思,也翻译为常量,但是很多人都认为被 ...
- 利用Metrics+influxdb+grafana构建监控平台
https://blog.csdn.net/fishmai/article/details/51817429
- 反向投影(BackProjection)
如果一幅图像的区域中显示的是一种结构纹理或者一个独特的物体,那么这个区域的直方图可以看作一个概率函数,他给的是某个像素属于该纹理或物体的概率. 所谓反向投影就是首先计算某一特征的直方图模型,然后使用模 ...