美团笔试第一题简单AC解法
import java.util.*; /** * 求解思路,设a,b为两个整数,ab%7==((a%7)b)%7恒成立。因此代码如下 * 例如 12 和 1996 两个数, 121996可以被7整除;那么12余7等于5 ,51996也可以被7整除 * * @author JoyStrong * */ public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] a = new int[n]; int[] b = new int[7]; for (int i = 0; i < n; i++) { a[i] = in.nextInt(); b[a[i] % 7]++; } long count = 0; if (b[0] > 0) count = b[0] * (b[0] - 1); for (int i = 0; i < n; i++) { int temp = a[i] % 7; if (temp != 0) { for (int j = 1; j < 7; j++) { if (Long.parseLong((j + "" + a[i])) % 7 == 0) { count += b[j]; if (j == temp) { count--; } } } } } System.out.println(count); } }
#美团#