热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

马拦过河卒题目分析c语言,马拦过河卒pascal(题目,分析,样例输入输出,源程序,感受).doc...

马拦过河卒pascal(题目,分析,样例输入输出,源程序,感受)马拦过河卒源程序名knight.???(pas,c,cpp)可执行文件名knight.exe输入文件名knight.

马拦过河卒pascal(题目,分析,样例输入输出,源程序,感受)

马拦过河卒

源程序名 knight.???(pas, c, cpp) 可执行文件名 knight.exe

输入文件名 knight.in 输出文件名 knight.out【问题描述】

棋盘上A点有一个过河卒,需要走到目标B点。卒行走的规则:可以向下、或者向右。同时在棋盘上C点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。

棋盘用坐标表示,A点 0, 0 、B点 n, m n, m为不超过15的整数 ,同样马的位置坐标是需要给出的。现在要求你计算出卒从A点能够到达B点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步。

【输入】

一行四个数据,分别表示B点坐标和马的坐标。

【输出】

一个数据,表示所有的路径条数。

【样例】

knight.in knight.out

6 6 3 36

输入: (4 2 8 8) (4 3 9 8)

输出: 4 10

源程序:

program ghz;

var z:array[1..100,1..100]of boolean; p,q:array[1..100,1..100]of byte; xb,yb,xm,ym,s:integer; pest:boolean;

procedure falss;

begin

z[xm,ym]: false;

z[xm-1,ym-2]: false;

z[xm-2,ym-1]: false;

z[xm-2,ym+1]: false;

z[xm-1,ym+2]: false;

z[xm+1,ym-2]: false;

z[xm+2,ym-1]: false;

z[xm+1,ym+1]: false;

z[xm+1,ym+2]: false;

end;

procedure writee x,y:integer ;

var u:byte;

begin if x 1 and y 1 then begin writeln ' 1,1 ' ; writeln; end else begin write ' ',x,',',y,' -- ' ; writee p[x,y],q[x,y] ; end;

end;

procedure print;

var i,j:integer;

begin pest: false; s: s+1; writee xb,yb ;

end;

procedure try x,y:integer ;

var i,j,w:integer;

begin if x xb or y yb then i: 1 else if x xb and y yb then print else for i: 1 to 2 do begin if i 1 and z[x+1,y] true then begin p[x+1,y]: x; q[x+1,y]: y; try x+1,y ; end; if i 2 and z[x,y+1] true then begin p[x,y+1]: x; q[x,y+1]: y; try x,y+1 ; end; end;

end;

begin

assign input,'word.in' ;

assign output,'word.out' ;

reset input ;

rewrite output ;

readln xb,yb,xm,ym ;

fillchar z,sizeof z ,true ;

falss;

pest: true;

s: 0;

try 1,1 ;

if pest true then writeln 'Sorry!No Answer' ;

writeln 'There are ',s,' answers!' ;

close input ;

close output ;

end.

感受:

初始化部分偏长需要改进,文件读入读出,而且考虑到了无解情况,总体比较全面。

第一次自己做对了,好高兴也!



推荐阅读
  • FastDFS Nginx 扩展模块的源代码解析与技术剖析
    FastDFS Nginx 扩展模块的源代码解析与技术剖析 ... [详细]
  • 本文详细介绍了使用C语言和C++实现的动态规划算法来解决数塔问题。通过具体的代码示例和算法解析,展示了如何高效地计算数塔的最大路径和。该方法不仅适用于数塔问题,还可应用于其他类似的组合优化问题。 ... [详细]
  • C语言中fprintf函数写入文件出现空白问题及解决方法
    C语言中fprintf函数写入文件出现空白问题及解决方法 ... [详细]
  • 本文详细探讨了Zebra路由软件中的线程机制及其实际应用。通过对Zebra线程模型的深入分析,揭示了其在高效处理网络路由任务中的关键作用。文章还介绍了线程同步与通信机制,以及如何通过优化线程管理提升系统性能。此外,结合具体应用场景,展示了Zebra线程机制在复杂网络环境下的优势和灵活性。 ... [详细]
  • 在使用Keil C51创建51单片机项目时,启动代码中包含多个关键元素,这些元素确保了系统的正确初始化和运行。主要包括复位向量、中断向量表、系统时钟配置、寄存器初始化以及主函数入口等。这些组件共同协作,为后续的应用程序执行提供稳定的基础。 ... [详细]
  • 通过采用用户数据报协议(UDP),本研究设计并实现了一种高效的文件传输方法。在发送端,系统利用Java编程语言中的相关类库,如`File`和`FileInputStream`,实现了文件的读取与分段处理,确保了数据的快速传输。该方法不仅提高了传输效率,还降低了网络拥塞的风险,适用于大规模文件传输场景。 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • Go 项目中数据库配置文件的优化与应用 ... [详细]
  • 在进行网络编程时,准确获取本地主机的IP地址是一项基本但重要的任务。Winsock作为20世纪90年代初由Microsoft与多家公司共同制定的Windows平台网络编程接口,为开发者提供了一套高效且易用的工具。通过Winsock,开发者可以轻松实现网络通信功能,并准确获取本地主机的IP地址,从而确保应用程序在网络环境中的稳定运行。此外,了解Winsock的工作原理及其API函数的使用方法,有助于提高开发效率和代码质量。 ... [详细]
  • Python 中 json.dumps() 和 json.loads() 的使用方法详解——Python 面试与 JavaScript 面试必备知识
    在 Python 中,`json.dumps()` 和 `json.loads()` 是处理 JSON 数据的核心函数。`json.dumps()` 用于将字典或其他可序列化对象转换为 JSON 格式的字符串,而 `json.loads()` 则用于将 JSON 字符串解析为 Python 对象。本文详细介绍了这两个函数的使用方法及其在 Python 和 JavaScript 面试中的重要性,帮助读者掌握这些关键技能。 ... [详细]
  • 针对NOJ1102黑白图像问题,本文采用深度优先搜索算法进行详细分析与实现。该问题要求在给定的时间限制(普通Java为1000-3000毫秒)和内存限制(65536KByte)内,处理一个n×n的黑白图像。通过对图像的逐像素遍历,利用深度优先搜索算法有效地识别并标记相连的黑色区域,从而实现图像的高效处理。实验结果显示,该方法在多种测试用例中均能稳定达到预期效果,具有较高的准确性和效率。 ... [详细]
  • 基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析
    基址获取与驱动开发:内核中提取ntoskrnl模块的基地址方法解析 ... [详细]
  • 字节码开发笔记:深入解析与应用技巧 ... [详细]
  • 深入解析Spring Boot启动过程中Netty异步架构的工作原理与应用
    深入解析Spring Boot启动过程中Netty异步架构的工作原理与应用 ... [详细]
  • 深入解析 OpenCV 2 中 Mat 对象的类型、深度与步长属性
    在OpenCV 2中,`Mat`类作为核心组件,对于图像处理至关重要。本文将深入探讨`Mat`对象的类型、深度与步长属性,这些属性是理解和优化图像操作的基础。通过具体示例,我们将展示如何利用这些属性实现高效的图像缩小功能。此外,还将讨论这些属性在实际应用中的重要性和常见误区,帮助读者更好地掌握`Mat`类的使用方法。 ... [详细]
author-avatar
红太郎的等待_921
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有