我已经尝试了几个小时来找到解决方案,我认为这是一项简单的任务,但我失败了 .
我有一个由3个不同字符组成的字符串 ('I','R' & 'O')
,长度从1到6 .
例如
IRRROO
RRORRR
IIR
RIRRO
每个字符代表一个数字 I=1,R=2,O=3
我需要将此字符串转换为单个数字,与位置相乘并对结果求和 . 例如
IRRROO ---> (1*1)+(2*2)+(2*3)+(2*4)+(3*5)+(3*6) =52
IIR ---> (1*1)+(1*2)+(2*3) =9
在此先感谢您的帮助 .
2 回答
因素有数字等价物 . 您可以很好地利用这个例子:
或作为一个不错的单行函数:
使用命名向量作为输入的替代版本,允许为每个字母分配任意数值: