1160 蛇形矩阵(codevs)】的更多相关文章

1160 蛇形矩阵 传送门  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver 题解       题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output Description n+1…
/*======================================================================== 1160 蛇形矩阵 题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output…
http://codevs.cn/problem/1160/ 题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output Description n+1行,n行为组成的矩阵,最后一行为对角线数字之和 样例输入 Sample In…
题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output Description n+1行,n行为组成的矩阵,最后一行为对角线数字之和 样例输入 Sample Input 3 样例输出 Sample Output 5 4 36…
参加腾讯前端实习生笔试,真的是被虐了千百遍,除了一条js程序题,其他半点前端都没有,都是考算法,计算机原理,数据结构.下面贴上腾讯笔试最后三大条中的一条,实现一个蛇形矩阵的输出.蛇形矩阵的什么样这里我就不多说了. var lineCount=0; var numCount=1; var lineLog=1; var doubleArray=[]; var result="result:"; var lineCountGet; function index (n) { ArrayMake…
一.题目描述 腾讯实习在线笔试的一道题目. 根据输入的数字(< 1000),输出这样的"蛇形"矩阵,如下.输入n,输出(n * n)阶矩阵,满足由外到内依次增大. 如: 输入2,则输出如下矩阵 1 2 4 3 输入3,则输出如下矩阵 1 2 3 8 9 4 7 6 5 输入4,则输出如下矩阵 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 二.代码如下 思路:可以分成四大步,向右,向下,向左,向上. import java.util.*; /** *…
蛇形矩阵,百度了一下,是这么一个东西: 像一条蛇一样依次递增. 我想,竟然做了螺旋矩阵,那做一下这个吧.在之前的螺旋矩阵的main函数基础上,写个函数接口就行了,这一次做的很快,但是这个矩阵感觉比螺旋要难. 我的思路是这样的,先输出左边的矩阵(包括对角线),再输出左边的矩阵(不包括对角线). 看上图,因为我是一条对角线一条对角线这样赋值的,所以左边矩阵应该要赋值 n次,右边是n-1次. 而外层循环的次数是偶数的时候,也就是这样: 上图的1,然后是:4->5->6,然后是:11->12-&…
题目链接: https://acm.ecnu.edu.cn/problem/3536/ 题目大意: 求蛇形矩阵的每一行的和,数据范围n<=200000. 思路: 由于n数据较大,所以感觉应该是需要找规律. 先附上蛇形矩阵的打表代码,先输出数据较小的蛇形矩阵,观察规律. #include <iostream> #include <malloc.h> using namespace std; ][]; ; void DrawCircle(int len,int n); int m…
一.蛇形矩阵的构建,并按行输出 例: 输入:n, 生成n*n的蛇形矩阵 1 2 3 8 9 4 7 6 5 输出:1 2 3 8 9 4 7 6 5 java编码 public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); int n = in.nextInt(); if(n < 0) return; if(n == 1){ Sys…
一个m*n的矩阵里按照下图形式填充,最后形成的矩阵即为蛇形矩阵,下图是m=4, n =5时的蛇形矩阵: 方法一:逐层循环 #include <iostream> using namespace std; const int ROW = 6; const int COLUMN = 10; const string space = " "; void setSnakeMatrix(int array[ROW][COLUMN], int start) { int x = 0, y…
[链接]:https://acm.ecnu.edu.cn/contest/59/problem/B/ B. 蛇形矩阵 Time limit per test: 2.0 seconds Memory limit: 256 megabytes 蛇形矩阵是我最喜欢的矩阵之一.n 阶蛇形矩阵由前 n2 个正整数顺时针从外到内盘绕而成. 例如四阶具有如下形式: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 五阶(奇数阶数)在中心位置略有不同: 1 2 3 4 5 16 17…
蛇行矩阵 Time Limit: 4000/2000ms (Java/Others) Problem Description: 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形. Input: 本题有多组数据,每组数据由一个正整数N组成.(N不大于100) Output: 对于每一组数据,输出一个N行的蛇形矩阵.两组输出之间不要额外的空行.矩阵三角中同一行的数字用一个空格分开.行尾不要多余的空格. Sample Input: 5 Sample Output: 1 3 6 10 15 2 5…
三角形蛇形矩阵 Time Limit: 2000/1000ms (Java/Others) Problem Description: 小铠觉得各类题型是要温故而知新的,所以他叫小发出一道类似做过的题.其实,一开始小发是拒绝的,但后来想了想,出些能坑别人的题也是人生的一大乐趣,何乐而不为.小发回顾了做过的题,灵机一闪,出了道三角形的蛇形矩阵. Input: 输入包含多组测试数据,首先输入n(1<n<=20),代表n*n的三角形矩阵. Output: 当n为奇数时,从1开始顺时针方向填入递增数据,…
传送门:QAQQAQ 题意:话说小X在孩提时,都会做标准的蛇形矩阵了,发现很好玩.现在的小X很想对其进行改版,变为如下类型的一个无限大蛇形数阵:令S(x)表示以1为左上角,x为右下角的矩形内所有数之和.例如S(12)就是具有深色背景的数之和.给定n,对于“以1为左上角,n为右下角的矩形”内的每一个数i,计算所有S(i)之和. 思路:神仙数学题... 先看暴力:我们通过人工YY和简单推算可以得出一个公式:$ans=\sum_{i=1}^{n}\sum_{j=1}^{m}a_{i,j}*\left…
Acwing 蛇形矩阵 package javaqq; import java.util.Scanner; public class 蛇形 { public static void main(String [] args) { int n,m; int [][]res=new int[100][100] ; boolean [ ][ ]st=new boolean[100][100] ; Scanner reader =new Scanner(System.in); n=reader.nextI…
题目给出如下表的一个矩阵: (红字表示行数或列数) 25 24 23 22 21 5 10 11 12 13 20 9 8 7 14 19 3 2 3 6 15 18 2 1 4 5 16 17 1 1 2 3 4 5 如表格,矩阵是从1开始盘曲的,排放规律不是很难找. 题目要求算出某个数的坐标,数据范围2*10^9,很明显不能用模拟的,这题是纯数学题,找规律题. 我们把矩阵拆开来看,每次进入上一层都会方向反转,每一层拆出来看就是: 25 24 23 22 21 20 19 18 17 10 1…
题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output Description n+1行,n行为组成的矩阵,最后一行为对角线数字之和 样例输入 Sample Input 3 样例输出 Sample Output 5 4 36…
题目描述 Description 小明玩一个数字游戏,取个n行n列数字矩阵(其中n为不超过100的奇数),数字的填补方法为:在矩阵中心从1开始以逆时针方向绕行,逐圈扩大,直到n行n列填满数字,请输出该n行n列正方形矩阵以及其的对角线数字之和. 输入描述 Input Description n(即n行n列) 输出描述 Output Description n+1行,n行为组成的矩阵,最后一行为对角线数字之和 样例输入 Sample Input 3 样例输出 Sample Output 5 4 36…
class Solution { public: int hammingWeight(uint32_t n) { ; //统计次数 ){ n &= (n-); //每次消掉一个1 k++; //统计消掉1的次数 } return k; } }; 解法:从下标为0开始,到下标为s的长度减1,对于每个字符都要计算 1)以这个字符为中心的回文串的长度(奇数串): 2)以这个字符和下个字符为中心的回文串的长度(偶数串). 注意:既要统计回文串为奇数时,又要统计回文串为偶数时,故要循环两次分开统计. cl…
今天大一考试C语言的时候看见了这道题,下面是我转载的一个大佬的博客,自认为分析的很清楚,特来分享一下. **原文地址: https://blog.csdn.net/jack22333/article/details/78847698 ** 题目如下图所示: 解题思路分析: 我们按照图中标出的箭头指向,逐一的赋值整个矩阵. 具体思路: 初始的时候,行标i=0,列标j=0,data[i][j]=0,此时k = 1(k表示当前矩阵位置到下一位置的运动方向): 当data移动到下一个位置后,此时需要把k…
剑指 Offer 29. 顺时针打印矩阵 Offer_29 题目描述: 题解分析: 题目的初衷是将这道题当做一个简单题处理 这道题一开始想的太复杂了,其实可以参考迷宫广度优先搜索的过程,只不过在选定一个方向遍历时,除非遇到改变方向的情况,否则一直走下去. 需要注意的是:这里的方向二维数组(direction),它里面四个方向需要满足顺时针的顺序. class Solution { public int[] spiralOrder(int[][] matrix) { if (matrix == n…
点击查看代码 #include<iostream> using namespace std; const int N = 110; int n, m; int dx[] = {-1, 0, 1, 0}, dy[] = {0, 1, 0, -1}; int x = 0, y = 0, d = 1, q[N][N]; int main() { cin >> n >> m; for (int i = 1; i <= m * n; i++) { q[x][y] = i;…
#include <iostream> using namespace std; #define M 100 int a[M][M]; void pt( int n ) { for ( int i = 0; i < n; i++ ) { for ( int j = 0; j < n; j++ ) { cout << a[i][j] << " "; //printf("%2d ",a[i][j]); } cout <…
public class Solution { //下x++ 左y-- 上x-- 右y++ public void prints(int n) { int[][] mp = new int[n][n]; for(int i=0; i<n; i++) { for(int j=0; j<n; j++) { mp[i][j] = 0; } } int x , y, tot; tot = mp[x=0][y=n-1] = 1; while(tot < n*n) { while(x+1<n…
Description 萌萌哒cy学姐参加去年的新生杯的时候,蛇形矩阵那题被她分分钟秒掉,于是她决定出一个更难的题目,她要求矩阵里的每个数都是质数,当然,蛇形的规则也略有变化 如2*3矩阵: 2 7 11 3 5 13 再如3*4的矩阵 2 13 17 37 3 11 19 31 5 7 23 29 Input 第一行为一个正整数T,表示数据的组数,接下来T行,每行两个正整数n,m,表示矩阵有n行m列 Output 对于每一个输入输出n行,每行m个数,表示这个矩阵,输出内容见题目描述,每个数输出…
Description There is a robot, its task is to bury treasures in order on a N × M grids map, and each treasure can be represented by its weight, which is an integer. The robot begins to bury the treasures from the top-left grid. Because it is stupid, i…
链接:https://www.nowcoder.com/acm/contest/93/B来源:牛客网 题目描述 给你一个n*n矩阵,按照顺序填入1到n*n的数,例如n=5,该矩阵如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 现在让你连接相邻两条边的中点,然后只保留他们围成封闭图形区域的数字,那么这个矩阵变为 3 7 8 9 11 12 13 14 15 17 18 19 23 现在你们涵哥让你求变化后的矩…
参考博客:    http://yangyingming.com/article/371/ //输入一个正整数n(n<=30),输出n所对应的蛇形矩阵.举两个例子: //n=10时,蛇形矩阵为: //具体的蛇形矩阵变化路径见下图: // // // import java.util.Scanner; public class testSheXin { /** * @param args */ public static Scanner Sc = new Scanner(System.in); p…
话说小X在孩提时,都会做标准的蛇形矩阵了,发现很好玩.现在的小X很想对其进行改版,变为如下类型的一个无限大蛇形数阵:令S(x)表示以1为左上角,x为右下角的矩形内所有数之和.例如S(12)就是具有深色背景的数之和.给定n,对于"以1为左上角,n为右下角的矩形"内的每一个数i,计算所有S(i)之和.例如,当n=8时,所求结果为S(1)+S(2)+S(9)+S(4)+S(3)+S(8)=1+3+12+5+10+27=58. 输入格式: 输入文件仅包含一个整数n 输出格式: 输出所求结果除以…
题目描述 Description 给定一个row行col列的整数数组array,要求从array[0][0]元素开始,按回形从外向内顺时针顺序遍历整个数组.如图所示:  输入输出格式 Input/output 输入格式:输入的第一行上有两个整数,依次为row和col.余下有row行,每行包含col个整数,构成一个二维整数数组.(注:输入的row和col保证0 < row < 100, 0 < col < 100)输出格式:按遍历顺序输出每个整数.每个整数占一行.  输入输出样例 S…