王道机试指南--排版题

练习题Repeater链接Repeater

参考博客九度1161——Repeater
思路是有每一级图的结点值其实是有上一级的一个结点扩展而来,如果有空格扩展而来,则该值一定为空格,如果是字符扩展而来,则无法确定。因此,需要由此级确定上一级的对应值,而当其为字符是,需要将大图缩小一级,来看其上上级对应结点的值,直到原始图,一定可以确定其值。其中大图缩小需要用模,确定上一级对应的结点值需要用除,操作的数均为pow(n,j)即上一级图的边长。
代码如下:

#include 
#include 
using namespace std;
const int N=3000;
char b[N+10][N+10];
int main()
{
    int n,q,dsize;//dsize边长
    char a[6][6];
    while(cin>>n&&n!=0)
    {
        cin.get();
        for(int i=0;i>q;
        //开始计算
        dsize=pow(n,q);

        int t1,t2,m1,m2,tmp,j;/*遍历每一个点*/
        for(int x=0;x

我自己编的报错,数组越界。。。。以后看一看。

#include 
#include 
#include 
using namespace std;

const int MAX = 3001;
int N, Q, Wn;
char m[MAX][MAX], p[MAX][MAX];
//char s[MAX];
string s;
void p2m(int n)
{
    for(int i=0; i> N && N!=0)
    {
        getchar();
        for(int i=0; i> Q;
        int n = N;
        /*
        while(--Q)
        {
            p2m(n);
/*
            for(int i=0; i

你可能感兴趣的:(王道计算机考研——机试指南)