博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
玩叠骰子
阅读量:6710 次
发布时间:2019-06-25

本文共 897 字,大约阅读时间需要 2 分钟。

玩叠骰子

时间限制(普通/Java):3000MS/10000MS          运行内存限制:65536KByte

描述

大家都玩过骰子吧,骰子一般都被用来赌博的工具,但是我们ACM的成员不一样。我们可以用骰子来编写出各种各样的题目,给广大爱好ACM的人锻炼思考问题的能力。看看骰子:

很熟悉吧o(∩_∩)o ~~~ 废话不多说我们看题:现在给你n个骰子,把他们规范的叠起来,叠好后会有一些骰子的面被遮住,现在问你怎么叠没被遮住的那些面的点数和最大? 说明:叠的时候不能错开的叠,也就是说两个面要满满的叠住。并且叠在地上的那面也算被遮住的。Do you know?

 

上面这个叠法就不合法。 骰子:每个面点数分别是:1,2,3,4,5,6 1点的对面是6点,2的对面是5点,3的对面是4点,

各自的位置关系再看图。

 

输入

输入多组数据。 输入给定骰子的数目n,1<=n<=1000000。

输出

输出没被遮住的那些面的点数最大和。每个数据之间换行。

 

样例输入

1

3

5

9

 

样例输出

20

51

81

141

 

 题解:此题根据所给出的数据来套规律,除1为20外(1放在地上),其他都可套用以下公式(1+2+3+4+5+6=21)

 公式:21*n-((n-3)/2+1)*12 = 15 *n + 6

/* 3 : 21*3 - 12
    5 : 21*5 - 12*2
    7 : 21*7 - 12*3
    9 : 21*9 - 12*4
   */

 

#include
#include
using namespace std;int main(){ int n; while(~scanf("%d",&n)) { if(n==1) printf("20\n"); else printf("%d\n",15*n+6); } return 0;}

 

 

 

 

 

 

转载于:https://www.cnblogs.com/lavender913/p/3326491.html

你可能感兴趣的文章
追女生送什么礼物好,要大全啊大全啊!
查看>>
参考文献人名缩写问题
查看>>
《Unix环境高级编程》读书笔记 第3章-文件I/O
查看>>
LeetCode – Refresh – LRU
查看>>
C# WEB代理
查看>>
Java之线程(0) - 序
查看>>
Manacher算法 - 求最长回文串的利器
查看>>
字符串操作函数的几个基本函数
查看>>
MFC窗口的拆分
查看>>
坐在马桶上看算法:Dijkstra最短路算法
查看>>
C语言第一次博客作业 陈张鑫
查看>>
mysql数据库中导入txt文本数据的方法
查看>>
Spring注解与Java元注解小结
查看>>
存储过程:项目中使用存储过程的一个实例
查看>>
Code Lock 并查集&&二分求幂
查看>>
mysql 学习
查看>>
Visual C++6.0 with SP6(中英文版)
查看>>
Longest Substring Without Repeating Characters
查看>>
HDU-1162 Eddy's picture
查看>>
[2406]Power Strings (POJ) KMP
查看>>