南阳oj 45 棋盘覆盖
来源:互联网 发布:淘宝最高级别会员 编辑:程序博客网 时间:2024/06/02 16:05
棋盘覆盖
时间限制: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;
样例输入
3123
样例输出
1521
此类题为大数
以下附上代码:
#include<stdio.h>#include<iostream>#include<algorithm>#include<string.h>#include<math.h>using namespace std;int a[17000],b[1700];int main(){ int t; cin>>t; while(t--) { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); int i,j,k; scanf("%d",&k); a[0]=1; for(i=0; i<k; i++) { int c=0; for(j=0; j<17000; j++) { int s=a[j]*4+c; a[j]=s%10; c=s/10; } } for(i=17000; i>=0; i--) if(a[i]) break; int s=0,k1=0,m=0; for(;i>=0;i--) { s=a[i]+k1*10; b[m++]=s/3; k1=s%3; } for(i=0;i<m;i++) if(b[i]) break; for(;i<m;i++) printf("%d",b[i]); printf("\n"); } return 0;}
0 0
- 南阳oj 45 棋盘覆盖
- 南阳oj 棋盘覆盖 题目45
- 南阳OJ 无线网络覆盖
- 南阳oj 题目199 无线网络覆盖
- NYOJ 45 棋盘覆盖
- 棋盘覆盖(nyoj 45)
- NYOJ 45 - 棋盘覆盖
- NYOJ 45 棋盘覆盖
- nyoj 45 棋盘覆盖
- nyoj 45 棋盘覆盖
- NYOJ 45 棋盘覆盖
- nyoj 45棋盘覆盖
- NYIT 45 棋盘覆盖
- NYOJ-45-棋盘覆盖
- 题目45:棋盘覆盖
- NYOJ 棋盘覆盖 南工45
- NYOJ 45 棋盘覆盖(java)
- 南阳OJ
- 【URAL 1244】Gentlemen(DP+记录路径)
- maven项目的一些姿势
- 仿腾讯盒子游戏(新手练习)
- 【数据结构】算法7.1-7.2 图的存储结构-数组表示法
- AndroidStudio使用进阶三: 重新认识AndroidStudio&Gradle
- 南阳oj 45 棋盘覆盖
- STEP 7 V5.5 版本特性
- c++函数模板
- 实现线程读写锁的四种方法
- H.264的Slice及Slice类型
- 循环队列的顺序表示和实现
- java编程思想(十)总结
- 循环问题
- 【数据结构】算法7.3 图的存储结构-十字链表