Xây Tháp


Submit solution

Points: 2 (partial)
Time limit: 1.0s
Memory limit: 125M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Tichpx chơi trò chơi xây tháp bằng các vật thể giống nhau là các hình lập phương có cạnh bằng nhau. Tầng 1 của tháp là 1 hình lập phương, tầng 2 là 3 hình lập phương và tầng thứ i có 2i-1 hình lập phương. Bài toán đặt ra là để xây tháp có n tầng thì cần đúng bao nhiêu hình lập phương.

Input

Một dòng duy nhất là số tầng tháp cần xây N \((1 <= N<=10^8)\)

Output

Một số nguyên dương là số hình lập phương cần dùng

Ví dụ:

Input

3

Output

9

Giải thích:

Tầng 1 là 1 hộp, Tầng 2 là 3 hộp, Tầng 3 là 5 hộp. Nên tất cả cần 1+3+5 = 9

tichpx

Comments


  • 0
    CThành_CNTT6_K61  commented on Sept. 8, 2021, 12:50 a.m.

    bài này chắc cout << n * n là xong nhỉ =)))


    • 0
      ga123  commented on Sept. 8, 2021, 3:33 a.m.

      :D hợp lý nhỉ


  • 0
    LeDucLoi_CNTT4_K61  commented on Sept. 7, 2021, 3:02 p.m.

    include<bits/stdc++.h>

    using namespace std ;

    long long xt(long long n) { if(n==1) return 1 ; else return 2*n-1+xt(n-1) ; }

    int main() { long long n; cin>>n; cout<<xt(n) ;

    }


  • 0
    Kien  commented on Sept. 6, 2021, 10:29 a.m.

    include<stdio.h>

    include<iostream>

    include<math.h>

    using namespace std;

    int main(){

    int sum=0,n;
        cin>> n;
    
        sum = ((1 + (2*n - 1 ))*n )/ 2;
    
        cout << sum;
    return 0;

    }


  • 0
    CONMEOKEUGAUGAU  commented on Sept. 6, 2021, 12:39 a.m.

    include <stdio.h>

    include <math.h>

    int main() { int n; scanf("%d",&n); int tong=n + (n*(n-1)); printf("%d",tong); }

    Cho em hỏi em sai ở đâu vậy ạ?


    • 0
      EEEC_LuongNgocYen25  commented on Sept. 6, 2021, 3:27 p.m.

      sao bạn nghĩ ra dk công thức này hay vậy ==


    • 0
      ga123  commented on Sept. 6, 2021, 5:28 a.m.

      mình rất ấn tượng về thuật toán của bạn. bạn có thể giải thích cho mình cách tìm ra công thức được không?


    • 0
      ga123  commented on Sept. 6, 2021, 1:34 a.m.

      biến chạy đến 10 mũ 8. biến int max là 32654. nên bị lỗi tràn bộ nhớ. bạn đổi kiểu biến thành long là được.


  • 1
    ga123  commented on Sept. 3, 2021, 9:19 a.m.

    Bài toán này rất thú vị vì đây là 1 bài toán thuộc dạng cấp số cộng bị ẩn, biết công thức tổng quát của cấp số cộng.

    • 2i-1 là công thức tổng quát tại vị trí của i, suy ra 2(i-1)-1 là công thức tổng quát tại i-1.
    • xét phần tử i - phần tử i trừ 1 = 2i-1 -( 2(i-1)-1 ) = 2i-1 -2i+2+1= 2;
    • vậy mọi phần tử sau đều bằng phần tử trước cộng 2 đơn vị. Đây chính là cấp số cộng với công sai = 2 .
    • công thức tổng quát trở thành công thức truy hồi của cấp số cộng : u(i)=u(i-1) + 2.

    sau khi đã chứng minh được tính chất của dãy, chúng ta có thể dùng trực tiếp công thức của cấp số cộng , với u(1) =1 vì tầng 1 chỉ có 1 hộp, công sai =2 .