输入三个自然数n,i,j(1<=i<=n,1<=j<=n),输出在一个n*n格的棋盘中(行列均从1开始编号),与格子(i,j)同行,同列,同一对角线的所有格子的位置。

如:n=4,i=2,j=3表示了棋盘中的第二行第三列的格子,如下图:

输入样例:n=4 x=2 y=3

输出样例:

(2,1)  (2,2)  (2,3)  (2,4)

(1,3)  (2,3)  (3,3)  (4,4)

(4,1)  (2,3)  (3,2)  (1,4)

(1,2)  (2,3)  (3,3)

思路:先输出同行的格式位置,再输出同列格式位置;对角线(右上到左下)的规律是横+竖之和相等,如4+1=2+3=3+2=1+4,左上到右下则是横-竖相等。

#include <bits/stdc++.h>

using namespace std;

int n,x,y;//n 代表棋盘大小,x和y分别代表横向格子位置和竖向格子位置

int main()

{

cout<<"请输入棋盘的格数n,横竖都为n"<<endl;

cin>>n;

cout<<"请输入初始的x和y值,如(2,3)代表第二行第三列"<<endl;

cin>>x>>y;

for(int i=1;i<=n;i++)

{
      cout<<"("<<x<<","<<i<<")";

}

cout<<endl;

for(int j=1;j<=n;j++)
    {
      cout<<"("<<j<<","<<y<<")";

}

cout<<endl;

for(int j=1;j<=n;j++)
    { for(int i=1;i<=n;i++)

{if(i+j==x+y)

{  cout<<"("<<i<<","<<j<<")"; }

}

}

cout<<endl;

return 0;

}

20200921--同行列对角线的格(奥赛一本通P89 2 二维数组)的更多相关文章

  1. ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)

    1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 154  Solved: 112[ ...

  2. C Tricks(十七)—— 对角线元素的屏蔽、二维数组(矩阵)的遍历

    1. 对角线元素的屏蔽 使用 if + continue 实现对对角线元素的屏蔽 for u in range(n): for v in range(n): if u == v: continue . ...

  3. java例题_29 二维数组问题,并输出对角线之和

    1 /*29 [程序 29 求矩阵对角线之和] 2 题目:求一个 3*3 矩阵对角线元素之和 3 程序分析:利用双重 for 循环控制输入二维数组,再将 a[i][i]累加后输出. 4 */ 5 6 ...

  4. Java练习小题_求一个3*3矩阵对角线元素之和,矩阵的数据用行的形式输入到计算机中 程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。

    要求说明: 题目:求一个3*3矩阵对角线元素之和,矩阵的数据用行的形式输入到计算机中 程序分析:利用双重for循环控制输入二维数组,再将 a[i][i] 累加后输出. 实现思路: [二维数组]相关知识 ...

  5. 【Java】获取二维数组行列长度

    二维数组int array[][] = new int[3][3]; 行长度:array.length 列长度:array[i].length

  6. java 二维数组的行列长度

    在 java 中,其实只有一维数组,而二维数组是在一维数组中嵌套实现的.比如 int[][] a = {{},{},{},{}} 要取行数和某一行的列数可以 : int rowLen = a.leng ...

  7. Python获取二维数组的行列数

    import numpy as np x = np.array([[1,2,5],[2,3,5],[3,4,5],[2,3,6]]) # 输出数组的行和列数 print x.shape # (4, 3 ...

  8. js求n行m列二维数组对角线元素之和的思路

    window.onload=function(){   var arr =  [[1,2,4],[5,6,7],[8,9,10]];   var i =3,j=3;   var result1=0,r ...

  9. C++入门经典-例6.2-将二维数组进行行列对换

    1:一维数组的初始化有两种,一种是单个逐一赋值,一种是使用聚合方式赋值.聚合方式的例子如下: int a[3]={1,2,3}; int a[]={1,2,3};//编译器能够获得数组元素的个数 in ...

  10. C#二位数组 数组矩阵对角线之和

    二维数组: public static void Main(string[] args) { int[,] a = new int[3, 3]; Random rom = new Random(); ...

随机推荐

  1. 3 - 标准数据加密(DES)及其备选

    标准数据加密(DES)及其备选 我的博客 原书:<Understanding Cryptography: A Text book for Students and Practitioners&g ...

  2. 微信开发者工具代码管理设置使用SSH Key(使用密码)方法

    参考微信开发社区--使用ssh key无法推送代码.微信开发者工具 SSH key认证 推送.拉取GitHub项目 1.确认已安装git,打开 Git Bash 使用https://git.weixi ...

  3. SWUpdate(Suricatta) + Hawkbit Server

    SWUpdate的详细介绍 https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/imx-processors%40tkb/5632/ ...

  4. 【运维】Linux/Ec2挂载卷与NFS搭建实站讲解

    英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计 ...

  5. jmeter使用Java请求二

    继承 AbstractJavaSamplerClient类来实现jar编辑 来写jmeter测试脚本 将如下两个包引入Java项目: ApacheJMeter_core.jar ApacheJMete ...

  6. CSS 多栏布局 固定布局 流动布局

    正常情况下都应该保持元素 height 属性的默认值 auto  . 多栏布局,某一栏目占的总宽度包括它的,Width,margin,padding ,border. CSS3中,应用 box-siz ...

  7. JiaoZiVideoPlayer模拟用户点击,切换播放引擎!~

    默认播放及模拟用户点击播放按钮 jzvideoPlayerStandard.startButton.performClick() 切换播放引擎及使用Ijkplayer JZVideoPlayer.se ...

  8. java & spring 注解 备忘

    java deprecated 注解 1 /** 2 * General service for all common business logic. 3 * 4 * @author wanghaip ...

  9. vue - axios简单封装

    分析: (1)axios处理接口请求.可能需处理请求拦截,响应拦截,不同类型的请求,所以需要一个http.js文件 (2)请求都是基于相关环境的,所以需要一个url.js处理环境 (3)可根据不同模块 ...

  10. 【1】java之类与对象

    一.前言 面向对象就是一种组件化的设计思想. 面向对象特性 封装性:保护内部的定义结构安全性: 继承性:在已有的程序结构上继续扩充新的功能: 多态性:在某一个概念范围内的满足. 二.类与对象的定义和使 ...