倒着遍历一遍,注意字符转换即可
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
var s string
ans,ws := 0,1
in := bufio.NewReader(os.Stdin)
fmt.Fscan(in, &s)
for i := len(s)-1; i>1; i-- {
if s[i]>='A' {
ans += (int(s[i])-55)*ws
}else {
ans += int(s[i]-'0')*ws
}
ws *= 16
}
fmt.Println(ans)
}

京公网安备 11010502036488号