CRDS - Cards

no tags 

Maricruz have a lot of cards, she always uses her cards to build pyramids as shown in the following image:

Cards

A pyramid card of 3 levels. She always wonder how many cards does she need to make a pyramid card of N levels. Your task is to answer that question.

Input

The first line of the input contains an integer 1 <= T <= 1,000. Each of the following T lines will have an integer 1 <= N <= 1,000,000.

Output

For each case, output a single line consisting of the number of cards needed to build a pyramid card of level N modulo 1,000,007.

Example

Input Example
2
3
7

Output Example
15
77

hide comments
shikhar: 2015-08-25 18:38:59

My 30th
3 lines code in python ...loved it

prakash_reddy: 2015-08-09 11:14:57

25th one... in spoj! :)

Medo: 2015-08-08 01:07:00

Doable with BigIntegers...

kvsk: 2015-08-01 07:19:48

Thanks Tony T for clarifying the question. Got WA for taking number of cards needed to make (n mod 1000007) levels instead of taking (number of cards needed to make n levels) mod 1000007.

Last edit: 2015-08-01 07:20:08
hugox14: 2015-07-17 03:26:12

Anyone know what structure should be used to solve a type error = runtime error (SIGSEGV) ?

Akshat Mathur: 2015-06-29 22:23:23

Too easy to complete 100 on spoj :-)

Pradd: 2015-06-29 08:04:16

4 lines in Python, around 11 in C++. There is a simple relationship between the number of cards and levels. Create a naive implementation first and study the relation for some aribitary values. You can then implement a simple one liner function to get the number of cards.

r0bo_dart: 2015-06-17 14:55:07

Using recursion here will be a disaster :P

Sidharth Yatish: 2015-06-08 15:16:04

Good problem :) Brute force won't work. Simple maths :)

Aguilar: 2015-05-22 23:07:14

5 WA ToT


Added by:Paulo Costa
Date:2012-01-30
Time limit:1s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:UGTO