寄信收信问题

article/2025/10/8 7:22:22

问题

在一个村庄里有i个人,他们每个人只能寄出一封信,接收一封信,并且不能给自己寄信。那么请问一共有多少种寄信收信方式。

思路

遇到此类问题,应该从简单的情况考虑。比如,当村里只有两个人的时候,只有一种寄信方法;如果有两个人的时候,A,B,C,A可以寄信给B或者C,这两种情况下剩余的人没有别的寄信方法,所以只有两种方法;当有四个人的时候,我们假设A把一封信给了B,此时B有两种情况:把信寄给A,那么此时就只有CD两个人,而两个的时候我们已经分析了,另一种情况是不把信寄给A,此时A和B可以看作一个人,因为他们俩现在是可以寄出去一封信和收到一封信,看作一个人,此时一共是有三个人,三个人的情况我们已经分析过。所以我们的递推公式已经得到,接下来就是代码了。很简单
在这里插入图片描述

代码

public static int f(int i) {if(i<=2) return i-1;return (i-1)*(f(i-1)+f(i-2));
}

http://chatgpt.dhexx.cn/article/6qEIwdF5.shtml

相关文章

【图论】中国邮递员问题、平面图上最大割问题的多项式时间算法

文章目录 一、中国邮递员问题1. 与欧拉回路的关系2. Edmonds-Johnson算法3. 一个例子 二、平面图上的最大割问题1. 割2. 最大割及其 N P \bold{NP} NP完全性3. 平面图上的最大割问题4. 奇回路覆盖5. 转化为一般图最大匹配6. 一个例子 三、顶点图上最大割问题的 N P \bold{NP} N…

AMPL实现中国邮递员问题,你get到了吗

本文所有代码全部使用AMPL语言实现 中国邮递员问题和旅行商问题不太相同&#xff0c;旅行商问题是不能回头的&#xff0c;而邮递员问题要求是访问所有街道&#xff0c;也就是说每个街道必须访问到。 1、哥尼斯堡七桥问题 要解出中国邮递员问题&#xff0c;首先我们一起来了解…

关于中国邮递员问题和欧拉图应用

关于中国邮递员问题和欧拉图应用 中国邮递员问题&#xff1a; 1962年有管梅谷先生提出中国邮递员问题&#xff08;简称CPP&#xff09;。一个邮递员从邮局出发&#xff0c;要走完他所管辖的每一条街道&#xff0c;可重复走一条街道&#xff0c;然后返回邮局。任何选择一条尽可…

欧拉环游和中国邮递员问题

文章目录 前言欧拉环游Fleury算法中国邮递员问题 前言 这篇文章介绍了欧拉环游的定义判定&#xff0c;Fleury算法求欧拉图中的欧拉环游&#xff0c;最后给出了中国邮递员问题的解决步骤。 欧拉环游 所谓欧拉环游就是指在一个无向图中&#xff0c;从一个点出发&#xff0c;每…

中国邮递员问题最短路径(代码+实现)

奇点需要配合LINGO进行去除&#xff0c;有需要请联系1822285076qq.com&#xff0c;需要一定费用。 总程序&#xff1a; 奇点消除lingo代码&#xff1a;

一笔画问题(中国邮递员问题)

一笔画与中国邮递员问题 一、引述 一笔画问题&#xff1a; 节点可以重复走边不可以重复走要求把所有边都走一次 欧拉图(Euler graph)&#xff1a; 从任何节点开始&#xff0c;都可以一笔画 每一个节点都是偶数价&#xff08;价数指的是从该节点能够伸出去的边的数目&#x…

用遗传算法解决中国邮递员问题

中国邮递员问题 所谓中国邮递员问题&#xff0c;见下面无向图 &#xff0c;假设邮递员初始位置在A点&#xff0c;现在他要访问所有其他4个结点以便投递邮件&#xff0c;结点与结点之间的距离已经标注在边上。问&#xff1a;邮递员应该依次访问哪些结点才能以最短路径遍历所有结…

中国邮路问题邮递员问题欧拉路径图论C++

下载链接&#xff1a;https://download.csdn.net/download/RONNIE_Zz/13094843 通路&#xff1a;在无向图中由点边交替组成的序列就是通路&#xff08;如果这个图是简单的&#xff0c;那么也可以使用点的序列来表示&#xff09;&#xff0c;如果首尾的点相同&#xff0c;则称为…

邮局问题

原题&#xff1a;POJ 1160 题意&#xff1a; 一些村庄被建立在一条笔直的高速公路边上,我们用一条坐标轴来描述这条高速公路&#xff0c;每一个村庄的坐标都是整数&#xff0c;没有两个村庄坐标相同。两个村庄间的距离&#xff0c;定义为它们的坐标值差的绝对值。我们需要在一…

c语言邮递员问题算法,中国邮递员问题的求解实例

中国邮递员问题的求解实例 前面已经讲过&#xff0c;对于欧拉图&#xff0c;可以直接用Fleury算法找出一条欧拉巡回路线&#xff1b;对于半欧拉图&#xff0c;可以先求出奇点u和v之间的最短路径P,令G G P&#xff0c;贝U G *为欧拉图&#xff0c;然后用Fleury算法来确定一个G *…

ACM图论算法—邮递员投递问题

题目描述 著名图论问题之一。邮递员从邮局出发送信&#xff0c;要求对辖区内每条街&#xff0c;都至少通过一次&#xff0c;再回邮局。在此条件下&#xff0c;怎样选择一条最短路线&#xff1f;此问题由中国数学家管梅谷于1960年首先研究并给出算法&#xff0c;故名。 中国邮…

百子作业 —— 中国邮递员问题

题目 严老师和宋老板去勘测武威市区的道路网&#xff0c;每一条路都需要勘测&#xff0c;且需要两人合作.武威市区可以近似地看成六横六纵组成的道路网&#xff0c;自西向东依次为学府路、民勤路、西关路、中关路、富民路、滨河路&#xff1b;自北向南依次为雷海路、宣武路、祁…

邮递员算法问题之c++实现

目录 前言演示问题介绍思路代码复现尾言 前言 大家好&#xff0c;我是Ericam_。 近些时间&#xff0c;通过一个项目接触到了邮递员算法问题&#xff0c;还是挺有意思的&#xff08;虽然做起来经历了不少的困难&#xff09;。最后勉强复现了吧&#xff0c;写个文章就当记录一下。…

中国邮递员问题+代码实现(cpp)

中国邮递员问题是一个和旅行商问题比较相关但又不太相同的一个问题&#xff0c;而且个人感觉理解的难度更大一点&#xff0c;当然&#xff0c;这就是仁者见仁&#xff0c;智者见智了&#xff0c;旅行商问题是不能回头的&#xff0c;一个节点访问过了不能回来了&#xff0c;并不…

离散数学实验----中国邮递员问题

实验目的和要求 实验目的&#xff1a; 理解什么是欧拉图&#xff0c;熟悉欧拉路和欧拉回路的概念。掌握Dijkstra算法&#xff0c;求解最短路径掌握Fleury算法&#xff0c;求解欧拉回路。了解Edmonds-Johnson算法解决中国邮递员问题的基本思路。通过程序实现中国邮递员问题&…

数据结构——中国邮递员问题

问题描述 代码 #include <stdio.h> #include <stdlib.h> #include <string.h>#define min(a,b) ( (a) < (b) ? (a) : (b) ) #define MAX_NODE 100 #define MAX_EDGE 100 #define INF 0x7fffffff // 表示两点不连通typedef struct {int number; …

[算法导论] 邮递员问题

邮递员问题 旅行商问题&#xff1a;给定一系列城市和每对城市之间的距离&#xff0c;求解访问每一座城市一次并回到起始城市的最短回路。&#xff08;遍历点&#xff0c;回到起点&#xff09; 哈密顿路径 哈密顿图 中国邮递员问题&#xff1a;邮差要设法找到一条最短路径&…

中国邮递员问题的深入剖析与算法实现(附例题及MATLAB、LINGO代码)

中国邮递员问题的深入剖析与算法实现 一、研究背景1.1 哥尼斯堡七桥问题1.2 欧拉图1.3 中国邮递员问题 二、中国邮递员问题深入解读2.1 问题重述2.2 奇偶点图上作业法[^1]2.3 最小二分匹配法1) 针对无向图2) 针对有向图 2.4 $fleury$算法 三、经典中国邮递员问题的具体实现3.1 …

中国邮路算法(中国邮递员问题)(详细)

通路&#xff1a;在无向图中由点边交替组成的序列就是通路&#xff08;如果这个图是简单的&#xff0c;那么也可以使用点的序列来表示&#xff09;&#xff0c;如果首尾的点相同&#xff0c;则称为一条回路 无向图的连通性&#xff1a;无向图中任意一对点之间均有通路 欧拉通路…

那些有趣的网站

之前分享过那些有意思的网站 &#xff0c;这里继续分享一波&#xff0c;也许你用得上。 福利单词 一边背单词一边看妹子的网站&#xff0c;用电脑打开&#xff0c;配合ctrlw 关闭新窗口&#xff0c;不知不觉就背了百来个词了 https://easychen.gitee.io/foxdict/ 工资计算器 简…