zoukankan      html  css  js  c++  java
  • 四川大学线下编程比赛第一题:数字填充

    四川大学线下编程比赛第一题:数字填充

    • 公布公司:
    • 有 效 期:
    • CSDN
    • 2014-09-272015-09-26
    • 难 度 等 级:
    • 答 题 时 长:
    • 编程语言要求:
    • 120分钟
    • C C++ Java C#
    题目详情

    peter喜欢玩数字游戏。但数独这种游戏对他来说太简单了。于是他准备玩一个难的游戏。游戏规则是在一个N*N的表格里填数,规则:对于每一个输入的N,从左上角開始,总是以对角线为起点,先横着填。再竖着填。这里给了一些例子,请在例子中找到规律并把这个N*N的表格打印出来吧。

    输入描写叙述:

    多组測试数据(数据量在100组以内)。

    每组測试数据仅仅有一行为一个整数N(1<=N<=30)。表示表格的大小。

    输出描写叙述:

    对于每组输入数据,输出N行,为填完的表格(N行。每行N个整数,每一个数字之间用空格隔开。

    答题说明

    输入例子:

    3

    5

    输出例子:

    1 2 3

    4 6 7

    5 8 9

    1 2 3 4 5

    6 10 11 12 13

    7 14 17 18 19

    8 15 20 22 23

    9 16 21 24 25


    题解:直接模拟;

    #include <iostream>
    using namespace std;
    #define MAX 30+1
    int main(){
    	int n,map[MAX][MAX];
    	while (cin>>n){
    		int num=1;
    		for (int i=0;i<n;i++){
    			for (int j=i;j<n;j++)
    				map[i][j]=num++;
    			for (int k=i+1;k<n;k++)
    				map[k][i]=num++;
    		}
    		for (int i=0;i<n;i++){
    			for (int j=0;j<n-1;j++)
    				cout<<map[i][j]<<" ";
    			cout<<map[i][n-1]<<endl;
    		}
    			
    	}
    	return 0;
    }


  • 相关阅读:
    ES的基本用法
    Elasticsearch安装部署
    jquery-layer弹框在火狐浏览器中弹框不显示的问题
    MySQL中横表和竖表相互转换
    echarts--迁徙图特性简介
    Lucene入门案例一
    Lucene入门简介
    SpringMVC中的拦截器
    SpringMVC中Json数据格式转换
    SpringMVC中的文件上传
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5054083.html
Copyright © 2011-2022 走看看