【题目链接】

ybt 1120:同行列对角线的格
OpenJudge NOI 1.8 02:同行列对角线的格子

【题目考点】

1. 二维数组

【解题思路】

解法1:移动焦点

设焦点起始位置,每移动一次,输出一次当前位置。

  • 在输出左上右下斜线时,先找到输入位置所在左上右下斜线中最左上方的位置,焦点从这个位置开始不断向右下移动
  • 在输出右上左下斜线时,先找到输入位置所在右上左下斜线中最右上方的位置,焦点从这个位置开始不断向左下方移动

解法2:遍历矩阵

遍历整个矩阵,输出其中满足条件的位置
同一行:行坐标相同
同一列:列坐标相同
同一左上右下斜线:行列坐标差值相同
同一右上左下斜线:行列坐标加和相同
【注意】最后一个要求是从左下到右上,行坐标从大到小遍历,列坐标从小到大遍历

【题解代码】

解法1:移动焦点

#include <bits/stdc++.h>
using namespace std;
int main()
{int n, sx, sy, x, y, a[15][15];//(sx,sy)输入的位置 (x,y)焦点位置 scanf("%d %d %d", &n, &sx, &sy);for(int j = 1; j <= n; ++j)//输出同一行的格子 printf("(%d,%d) ", sx, j);putchar('\n');//换行 for(int i = 1; i <= n; ++i)//输出同一列上的格子 printf("(%d,%d) ", i, sy);putchar('\n');x = sx, y = sy;//寻找与(sx,sy)在同一左上右下斜线上,左上方的第一个位置 while(x > 1 && y > 1)//找左上方的格子 x--, y--;//向左上方移动 //此时x, y就是左上右下斜线上左上角第一个位置for(; x <= n && y <= n; ++x, ++y)//输出左上右下斜线上的格子 printf("(%d,%d) ", x, y);putchar('\n');x = sx, y = sy;//寻找与(sx,sy)在同一左下右上斜线上,左下方的第一个位置 while(x < n && y > 1) //找左下方的格子 x++, y--;//向左下方移动 //此时x,y就是左下右上斜线上左下角第一个位置for(; x >= 1 && y <= n; --x, ++y)//输出左下右上斜线上的格子 printf("(%d,%d) ", x, y);return 0;
}

解法2:遍历矩阵

#include <bits/stdc++.h>
using namespace std;
int main()
{int n, si, sj, a[15][15];//(si,sj)输入的位置 scanf("%d %d %d", &n, &si, &sj);for(int j = 1; j <= n; ++j)//输出同一行的格子 printf("(%d,%d) ", si, j);putchar('\n');//换行 for(int i = 1; i <= n; ++i)//输出同一列上的格子 printf("(%d,%d) ", i, sj);putchar('\n');for(int i = 1; i <= n; ++i)//行号 从左上到右下 for(int j = 1; j <= n; ++j)//列号 if(i - j == si - sj)//在同一左上右下斜线 printf("(%d,%d) ", i, j);putchar('\n');for(int i = n; i >= 1; --i)//行号 从左下到右上 for(int j = 1; j <= n; ++j)//列号 if(i + j == si + sj)//在同一左下右上斜线 printf("(%d,%d) ", i, j);putchar('\n');return 0;
}

信息学奥赛一本通 1120:同行列对角线的格 | OpenJudge NOI 1.8 02:同行列对角线的格子相关推荐

  1. 信息学奥赛一本通 1017:浮点型数据类型存储空间大小 | OpenJudge NOI 1.2 02

    [题目链接] ybt 1017:浮点型数据类型存储空间大小 OpenJudge NOI 1.2 02:浮点型数据类型存储空间大小 [题目考点] 1. sizeof运算符 sizeof可以求某常量.变量 ...

  2. 信息学奥赛一本通 1002:输出第二个整数 | OpenJudge NOI 1.1 02

    [题目链接] ybt 1002:输出第二个整数 OpenJudge NOI 1.1 02:输出第二个整数 [题目考点] 声明多个int型变量 cin输入变量 cin 后面用>>分隔要输入的 ...

  3. 信息学奥赛一本通 1171:大整数的因子 | OpenJudge NOI 1.6 13:大整数的因子

    [题目链接] ybt 1171:大整数的因子 OpenJudge NOI 1.6 13:大整数的因子 [题目考点] 1. 高精度 考察:高精模低精 高精度计算讲解 [解题思路] 先把参与运算的数字当成 ...

  4. 信息学奥赛一本通 1149:最长单词2 | OpenJudge NOI 1.13 16

    [题目链接] ybt 1149:最长单词2 OpenJudge NOI 1.13 16:最长单词2 [题目考点] 1. 字符串遍历 2. 处理多个字符串 3. while(cin >> - ...

  5. 信息学奥赛一本通 1148:连续出现的字符 | OpenJudge NOI 1.9 11

    [题目链接] ybt 1148:连续出现的字符 OpenJudge NOI 1.9 11:连续出现的字符 [题目考点] 1. 字符串处理 2. 数值统计 [题解代码] 解法1:比较相邻字符 #incl ...

  6. 信息学奥赛一本通 1145:字符串p型编码 | OpenJudge NOI 1.7 31:字符串p型编码

    [题目链接] ybt 1145:字符串p型编码 OpenJudge NOI 1.7 31:字符串p型编码 [题目考点] 1. 字符串处理 [解题思路] 遍历字符串,设置变量curNum表示当前关注的数 ...

  7. 信息学奥赛一本通 1143:最长最短单词 | OpenJudge NOI 1.7 25

    [题目链接] ybt 1143:最长最短单词 OpenJudge NOI 1.7 25:最长最短单词 [题目考点] 1. 字符串处理 [解题思路] 思路1:将字符串分解为多个单词,而后求出各个单词的长 ...

  8. 信息学奥赛一本通 1137:加密的病历单 | OpenJudge NOI 1.7 12

    [题目链接] ybt 1137:加密的病历单 OpenJudge NOI 1.7 12:加密的病历单 [题目考点] 1. 字符串处理 [解题思路] 加密过程有三个工序:循环左移,逆序存储,大小写反转. ...

  9. 信息学奥赛一本通 1121:计算矩阵边缘元素之和 | OpenJudge NOI 1.8 03:计算矩阵边缘元素之和

    [题目链接] ybt 1121:计算矩阵边缘元素之和 OpenJudge NOI 1.8 03:计算矩阵边缘元素之和 [题目考点] 1. 二维数组 [解题思路] 解法1:遍历外圈 一个m行n列的矩阵, ...

最新文章

  1. 智能家居隐私问题再遭热议:涉案设备中的数据究竟受不受保护?
  2. jQuery学习——表单
  3. java模拟器apk闪退_急,求帮助,eclipse生成apk安装以后闪退
  4. jquery_pagination分页插件的使用
  5. AC_CHECK_LIB的工作原理
  6. 给一个div innerhtml 后 没有内容显示的问题_实战:仅用18行JavaScript构建一个倒数计时器...
  7. 2021年6月10日08点53分 SQL注入
  8. bigemap软件优势
  9. 程序设计c语言基础选择题填空题(含答案)
  10. gem5——向简单脚本中添加缓存
  11. 树的遍历 ALDS1_7_C: Tree Walk
  12. Excel 行或列合并工具 Concatenate 实现姓和名组合
  13. WSAData小说明(转)
  14. ppt技巧一四步法调整段落排版
  15. 【编程不良人】快速入门SpringBoot学习笔记03--整合MyBatis、本地测试、热部署工具、日志处理、面向切面编程、文件上传、文件下载
  16. 浅谈嵌入式MCU软件开发之startup过程详解(从复位向量到main函数之前的准备工作)
  17. 大学生python心得1000字_大学生心得体会1000字
  18. 【嵌入式Linux应用开发】温湿度监控系统——绘制温湿度折线图
  19. 腾讯安全发布iOA SaaS版产品,为企业提供安全访问服务
  20. [SpringBoot系列]基础过渡与夯实(基础配置)

热门文章

  1. Nhibernate3.3.3 GA使用初探
  2. 取出重复记录的第一条
  3. 关于自绘CListBox的一些疑惑
  4. 黑客魔术!如何黑掉一台根本不联网的电脑
  5. 面试官:Netty的线程模型可不是Reactor这么简单
  6. 了解这些坑,再也不会出现诡异的BUG了~
  7. 2020年2月全国程序员工资统计
  8. JEECG_3.7.2新版本入门讲解—UI标签库专题-张代浩-专题视频课程
  9. 《JEECG_v3 开发手册》文档发布通知
  10. 数据交互智能终端设想