题目:给n个数,数字为0或5
求出能被90整除的最大数。
思路:9个5可以被9整除
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); sc.nextLine(); // k_0 : 0的个数 // k_5 : 5的个数 int k_0 = 0, k_5 = 0; for (int i = 0; i < n; i++) { int t = sc.nextInt(); if (t == 0) { k_0++; } else { k_5++; } } int k = k_5 / 9; // k : k_5中最多有k个 555555555 if (k_0 == 0) { // 没有 0 System.out.println(-1); } else if (k == 0) { // 没有 9个5 System.out.println(0); } else { StringBuilder sb = new StringBuilder(); for (int i = 0; i < k; i++) { sb.append("555555555"); } // 末尾加上所有 0 for (int i = 0; i < k_0; i++) { sb.append("0"); } System.out.println(sb.toString()); } } }
全部评论
(0) 回帖