CodeForces - 630I
Parking Lot
Time Limit: 500MS |
| Memory Limit: 65536KB |
| 64bit IO Format: %I64d & %I64u |
Submit Status
Description
To quickly hire highly skilled specialists one of the new IT City companies made an unprecedented move. Every employee was granted a car, and an employee can choose one of four different car makes.
The parking lot before the office consists of one line of (2n - 2)
Looking on the straight line of cars the company CEO thought that parking lot would be more beautiful if it contained exactly n
Input
The only line of the input contains one integer n (3 ≤ n ≤ 30) — the amount of successive cars of the same make.
Output
Output one integer — the number of ways to fill the parking lot by cars of four makes using the described way.
Sample Input
Input
3
Output
24
Hint
Let's denote car makes in the following way: A — Aston Martin, B — Bentley, M — Mercedes-Maybach, Z — Zaporozhets. For n = 3
Originally it was planned to grant sport cars of Ferrari, Lamborghini, Maserati and Bugatti makes but this idea was renounced because it is impossible to drive these cars having small road clearance on the worn-down roads of IT City.
Source
Experimental Educational Round: VolBIT Formulas Blitz
//题意:公司总共有四种类型的车
给你一个n,有2*n-2个停车位,经理要求要有n辆车为同一种类型的车连在一起,问总共有几种排列方法。
//思路:
没什么技巧,就是举几个例子找规律。
比如n=4,情况数为:4*3*4+3*4*3+4*3*4。
多列几种数据可以找到规律sum=(3*n-1)*3*4^(n-3)。
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#define INF 0x3f3f3f3f
#define ll long long
#define N 10010
#define M 1000000007
using namespace std;
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int m=3*n-1;
int nn=n-3;
ll sum=m*3*pow(4,nn);
printf("%lld\n",sum);
}
return 0;
}
Submit Status