题意
把一个整数分为前后两部分,和为偶数的方案数
思路
最朴素的思路,枚举切割的位置并且把前后两部分的数算出来,计算和。
但是实际上奇偶性只需要关心最后一位的奇偶性,所以只需计算切割后两个数的个位数的和。
具体而言,枚举切割的位置,i表示第i个位置的数是前一部分的个位数,后半部分的个位数始终是整数s的个位数,计算和并判断奇偶。
Go代码
package main import ( "fmt" ) func main() { var s string fmt.Scan(&s) var ans int lastDigit := s[len(s)-1] - '0' for i := 0; i < len(s) - 1; i ++ { if (s[i] - '0' + lastDigit) % 2 == 0 { ans++ } } fmt.Println(ans) }