`
samuschen
  • 浏览: 407769 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

电影票问题

 
阅读更多

一、题目

有一个人站在电影院门口卖票,票价50,一开始手上没有找零的钱,现在有两种人来买票,A拿着100元的钱,人数为m(m<20),B拿着50元的钱,人数为n(n<20)。卖票的人必须用从B类人中那里得来钱找给A,所以卖票的顺序是有限制的。

要求写一个程序打印出所有的买票序列:
例如:m =2 ,n = 3;
BABAB
BBAAB
BBBAA
BBABA

 

二、解法→递归法

1、思想

金句:涉及“状态转换和记录”的都可以用递归的方法求解

 

模拟 所有人买票的全过程,

 

变量假设

假设拿着100元钱的人A的人数有m 人,拿着50元钱的B的人数有n 人,

某一时刻已经买票的A有a 人,B有b

 

子问题

如果进来的一个人是A,需要判断条件 ①a<m且②a<b

如果进来的一个人是B,需要判断条件 b<n

 

终止条件

所有的人都已经买票完毕,即有a+b==m+n

 

   1. #include <stdio.h>
   2. char str[500];
   3. int n, m;
   4. void oper(int a, int b,int m, int n)
   5. {
   6.         if (a + b == m + n)
   7.                 printf("%s/n", str);
   8.         else {
   9.                 if (a < m && a < b) {
  10.                         str[a + b] = 'A';
  11.                         oper(a + 1, b, m, n);
  12.                 }
  13.                 if (b < n) {
  14.                         str[a + b] = 'B';
  15.                         oper(a, b + 1, m, n);
  16.                 }
  17.         }
  18. }
  19. int main()
  20. {
  21.         while (scanf("%d%d", &m, &n) == 2)
  22.         {
  23.                 if (n < 0 || m < 0 || m > n)
  24.                         printf("No result!/n");
  25.                 else {
  26.                         str[m + n] = 0;
  27.                         oper(0, 0, m, n);
  28.                 }
  29.         }
  30.         return 0;
  31. }

分享到:
评论

相关推荐

    影院售票系统 电影票打印 机打电影票

    在构建一个影院售票系统时,电影票打印是一个关键环节,尤其在采用爱普生TM-86L打印机这样的专业设备时。爱普生TM-86L是一款支持ESC/POS指令集的打印机,广泛应用于零售、餐饮以及娱乐行业,包括电影院的电影票打印...

    电影票在线售票系统

    电影票在线售票系统是一种基于互联网技术的现代购票方式,它结合了软件工程、数据库管理、Web开发等多个IT领域的知识。本系统通常采用流行的SSM(Spring、SpringMVC、MyBatis)框架来构建,这使得系统具有良好的可...

    电影票在线购买网站模板

    电影票在线购买网站模板是基于HTML5技术设计的一款专为电子商务平台打造的网页模板,它旨在为用户提供便捷、直观的在线购票体验。HTML5作为现代网页开发的标准,提供了丰富的功能和增强的用户体验,使得该模板在视觉...

    C#网上电影票订票系统 +access数据库

    《C#网上电影票订票系统 + access数据库》是一个基于C#编程语言开发的实用型应用程序,主要用于实现在线电影票的预订服务。该系统利用access数据库来存储和管理相关的票务信息,为用户提供便捷的购票体验。下面将...

    微信小程序电影票订票小程序软件源码数据库.zip

    该压缩包文件“微信小程序电影票订票小程序软件源码数据库.zip”主要包含了一个毕业设计项目,该项目专注于开发微信小程序,用于实现电影票的在线预订功能。以下将详细阐述涉及的知识点: 1. **微信小程序**:微信...

    C#+SQL电影票销售系统

    《C#+SQL电影票销售系统》是一个综合性的应用程序,它结合了C#编程语言和SQL Server 2005数据库技术,旨在实现电影票的在线销售、查询以及用户和订单的管理。在这个系统中,C#主要负责前端的用户交互和业务逻辑处理...

    PHP电影票订购系统.zip

    【PHP电影票订购系统】是一个基于PHP编程语言开发的应用,用于实现在线电影票的预订功能。这个系统可能包括用户注册、登录、选择电影、选择座位、支付以及订单管理等多个核心模块,为用户提供方便快捷的购票体验。...

    电影票购票管理系统(源码).zip

    电影票购票管理系统是一款基于软件开发技术构建的应用程序,主要用于便捷地进行电影票的购买和管理。这个系统的源码提供了一次深入理解Web应用程序开发过程的机会,特别是针对在线交易和服务预订的场景。以下将从几...

    微信小程序电影票订票小程序软件源码数据库.doc

    因此,《基于微信小程序的电影票订票系统》旨在利用最新的信息技术手段解决传统电影票购买过程中的痛点,如排队时间长、操作繁琐等问题,为用户提供一个方便快捷的电影票预订平台。 #### 技术架构与选型 本项目...

    最新电影票购票管理系统(视频+源码)

    电影票购票管理系统是一款用于在线购买电影票的软件系统,它集成了用户管理、影片信息管理、场次安排、座位选择、支付处理等多个功能模块,旨在为用户提供便捷的购票体验。这款最新的电影票购票管理系统不仅提供了...

    毕业设计--一个基于Android的电影票购票App

    《基于Android的电影票购票App开发详解》 在信息技术飞速发展的今天,移动应用已经渗透到我们生活的方方面面,其中,电影票购票App作为娱乐生活的重要组成部分,为用户提供了一种便捷的购票方式。本文将深入探讨一...

    毕业设计_电影票在线预订系统参考论文.pdf

    在线电影票预订系统是一个结合了信息技术和传统电影票务的产物,它能有效地解决电影院在票务管理中遇到的诸多问题,同时也满足了消费者对快速、便捷服务的需求。本文将从技术实现和系统设计两个方面对电影票在线预订...

    Android自定义view实现电影票在线选座功能

    在Android开发中,自定义View是一个强大的工具,可以实现各种复杂的界面效果,例如电影票在线选座功能。本篇文章将详细介绍如何利用自定义View实现这一功能,主要涉及的技术点包括矩阵Matrix、手势检测...

    jQuery手机端电影票选座代码

    《jQuery手机端电影票选座代码详解》 在当今移动互联网时代,电影票选座功能已经成为各大在线购票平台不可或缺的一部分。对于开发者来说,利用jQuery构建一个高效、用户体验良好的手机端电影票选座系统是一项挑战。...

    电影票购票管理系统(视频+源码)

    电影票购票管理系统是一款用于在线购买电影票的软件应用,它结合了视频教程和源代码,为学习者提供了全面的理解和实践机会。系统的核心功能包括用户管理、电影信息管理、场次安排、座位选择、订单处理以及支付接口...

    电影票售票系统(附文档).zip

    电影票售票系统是一种基于信息技术的综合管理平台,用于处理与电影票销售相关的各种业务流程。这个系统涵盖了购票、退票、选座、预订、支付等多个环节,为电影院提供了一站式的解决方案。以下将详细介绍该系统可能...

    微信小程序电影票订票小程序软件设计与实现.docx

    该系统旨在解决电影票订票过程中的问题,如排队难、买票难等,并提高电影爱好者的娱乐体验。 首先,本文档介绍了信息技术在改变我们的生活方式方面的重要性。随着生活水平的提高,我们越来越关注我们的娱乐生活。...

    类似网购电影票的GridView选择器

    "类似网购电影票的GridView选择器"通常是指一个自定义的GridView,用于模拟在线购买电影票时用户选择座位的过程。这种选择器通常具有交互性强、视觉效果良好的特点,能够帮助用户直观地看到座位布局并进行选择。 ...

    电影票订票系统标程

    ### 电影票订票系统关键技术知识点 #### 一、系统背景与需求分析 **系统背景:** 随着现代生活节奏的加快以及人们对娱乐品质要求的提升,电影已成为大众休闲娱乐的重要方式之一。传统的手工售票方式效率低下且易...

Global site tag (gtag.js) - Google Analytics