数据结构与算法之倒推算法 | 您所在的位置:网站首页 › 三个平方数之和等于多少 › 数据结构与算法之倒推算法 |
数据结构与算法之倒推算法
倒推算法概念
所谓的倒推法(Inverted Recursion)是对某些特殊问题所采用的违反通常习惯的,从后向前推解问题的方法。 在不知前提条件的情况下,经过从后向前递推,来求解问题的初始数据,即由结果倒过来推解它的前提条件。另外在对一些进行分析或建立数学模型时,从前向后分析问题感到比较棘手,而采用倒推法,则问题很容易理解和解决。 回文日期问题: 在日常生活中,通过年、月、日这三个要素可以表示出一个唯一确定的日期。 牛牛习惯用8位数字表示一个日期,其中,前4位代表年份,接下来2位代表月 份,最后2位代表日期。显然:一个日期只有一种表示方法,而两个不同的日期的表 示方法不会相同。 牛牛认为,一个日期是回文的,当且仅当表示这个日期的8位数字是回文的。现 在,牛牛想知道:在他指定的两个日期之间包含这两个日期本身),有多少个真实存 在的日期是回文的。 一个8位数字是回文的,当且仅当对于所有的i ( 1 31,28,31,30,31,30,31,31,30,31,30,31}; if((year%400)||(year%4==0 && year%100!=0)) a[1]++; if(month13) //月份不合法 return false; if(daya[month-1])//日期不合法 return false; return true;//合法返回true } int main() { int start,end,i,j,k; cin>>start>>end;// 开始和结速时间 for(i=start;i int i,n,a,b,c,d,e; for(i=100;i |
CopyRight 2018-2019 实验室设备网 版权所有 |