题目:
时间限制: 1.0s 内存限制: 512.0MB 本题总分: 15 分
问题描述
小蓝对 3 33 的倍数很感兴趣。现在他手头有三个不同的数 a , b , c ,他想知道,这三个数中是不是有两个数的和是 3 的倍数。
例如,当 a = 3 , b = 4 , c = 6 时,可以找到 a aa 和 c cc 的和是 3 的倍数。
例如,当 a = 3 , b = 4 , c = 7 时,没办法找到两个数的和是 3 的倍数。
输入格式
输入三行,每行一个整数,分别表示 a , b , c a, b, ca,b,c。
输出格式
如果可以找到两个数的和是 3 33 的倍数,输出 y e s yesyes,否则输出 n o nono。
测试样例1
Input:
3
4
6
Output:
yes
测试样例2
Input:
3
4
7
Output:
no
评测用例规模与约定
对于所有评测用例,1 ≤ a ≤ b ≤ c ≤ 100 。
分析:
给定三个数,题目要我们求任意两个数有没有3的倍数,那就只有三种情况,用递归来做,结束条件为cout==3,每次递归变化为顺移,并且count++
步骤:
![](https://i-blog.csdnimg.cn/blog_migrate/73f223abd7467930850d912e7475b17b.png)
package 第十二届省赛第二套;
import java.math.BigInteger;
import java.util.Scanner;
public class 测试 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
String v=f(a, b, c, 0);
System.out.println(v);
}
private static String f(int a, int b, int c, int count) {
if (count == 6) {
return "no";
}
if ((a + b) % 3 == 0) {
return "yes";
} else {
return f(c, a, b, count + 1);
}
}
}