欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【TOJ 3089】玩叠骰子

程序员文章站 2022-09-12 23:16:00
Description 大家都玩过骰子吧,骰子一般都被用来赌博的工具,但是我们ACM的成员不一样。我们可以用骰子来编写出各种各样的题目,给广大爱好ACM的人锻炼思考问题的能力。看看骰子: 很熟悉吧o(∩_∩)o ~~~废话不多说我们看题:现在给你n个骰子,把他们规范的叠起来,叠好后会有一些骰子的面被 ......

Description

大家都玩过骰子吧,骰子一般都被用来赌博的工具,但是我们ACM的成员不一样。我们可以用骰子来编写出各种各样的题目,给广大爱好ACM的人锻炼思考问题的能力。看看骰子:
【TOJ 3089】玩叠骰子 
很熟悉吧o(∩_∩)o ~~~
废话不多说我们看题:现在给你n个骰子,把他们规范的叠起来,叠好后会有一些骰子的面被遮住,现在问你怎么叠没被遮住的那些面的点数和最大?
说明:叠的时候不能错开的叠,也就是说两个面要满满的叠住。并且叠在地上的那面也算被遮住的。Do you know?
【TOJ 3089】玩叠骰子 
上面这个叠法就不合法。
骰子:每个面点数分别是:1,2,3,4,5,6
1点的对面是6点,2的对面是5点,3的对面是4点,
【TOJ 3089】玩叠骰子
各自的位置关系再看图。

Input  

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

Output

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

Sample Input 

1
3
5
9

Sample Output

20
51
81
141

 

计算叠骰子的点数最大值:

①当只有一个骰子的时候点数为20(点数1着地)

②当骰子数量≥2时,总点数为15*n+6

 

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