zoukankan      html  css  js  c++  java
  • NYOJ--45--棋盘覆盖(大数)

    棋盘覆盖

    时间限制:3000 ms  |  内存限制:65535 KB
    难度:3
     
    描述

    在一个2k×2k(1<=k<=100)的棋盘中恰有一方格被覆盖,如图1(k=2时),现用一缺角的2×2方格(图2为其中缺右下角的一个),去覆盖2k×2k未被覆盖过的方格,求需要类似图2方格总的个数s。如k=1时,s=1;k=2时,s=5

                                                                                       

    图1

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

        图2                     

     

     

     

     
     
    输入
    第一行m表示有m组测试数据;
    每一组测试数据的第一行有一个整数数k;
    输出
    输出所需个数s;
    样例输入
    3
    1
    2
    3
    样例输出
    1
    5
    21

     1 //公式:f(n) = f(n-1) *4 + 1
     2 import java.util.*;
     3 import java.math.*;
     4 public class test{
     5     
     6     public static void main(String args[]){
     7         Scanner cin = new Scanner(System.in);
     8         BigInteger arr[] = new BigInteger[101];
     9         arr[1] = BigInteger.ONE;
    10         for(int i=2; i<101; ++i){
    11             arr[i] = arr[i-1].multiply(BigInteger.valueOf(4)).add(BigInteger.ONE);
    12         }
    13         int s = cin.nextInt();
    14         while(s-- > 0){
    15             int k = cin.nextInt();
    16             System.out.println(arr[k]);
    17         }
    18     }
    19 }
  • 相关阅读:
    git cmd 命令在已有的仓库重新添加新的文件夹
    google guava Multimap的学习介绍
    JavaScript笔记基础版
    初识hive
    深入学习HBase架构原理
    初识Azkaban
    MapReduce工作流多种实现方式
    Hive 分组问题
    sqoop使用中的小问题
    Sqoop 结合多种系统的具体应用
  • 原文地址:https://www.cnblogs.com/langyao/p/6773318.html
Copyright © 2011-2022 走看看