求解 关于套汇问题
套汇是指利用汇率差异将一单位的货币转换为大于一单位的同种货币。例如,假设1美元兑换8.8人民币,1人民币兑换0.1英镑,1英镑兑换1.5美元,那么,如果一个人拿着1美元先兑换成人民币,再把人民币兑换成英镑,最后将英镑兑换成美元,最后他能得到1*8.8*0.1*1.5=1.32美元,从而获得了利润,这就是套汇。假设有n种货币v1,v2,…,vn和有关汇率的n*n矩阵,其中A[I,j]是指一单位货币vi兑换成货币vj的单位数,要求设计一个程序判断是否存在一个货币序列vi1,vi2,…,vik使得A[i1,i2]*A[i2,i3]*…*A[ik,i1]>1,如果存在,则输出所有这样的货币序列,如果不存在则输出空,并确定算法的时间代价。
如果不要求输出所有这样的序列,那这就是最短路问题的变形,用Floyd算法就可以了。但是要输出所有的序列…还是搜索把~ 还有题目中要求的货币序列也没说清楚是不是要求序列中的任意两个都不相同…
别算了,中行是不会让你赚到钱的,有会计师、统计师、分析师,银行的交精算师。你要能赚钱,银行就该关门了,还有在中国外汇不是自由兑换的,小心倒外币是违法的。
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>