Français
Ouvrir dans Telegram

Fil de discussion Message n° 1738

2 messages · –
  1. K
    import java.util.Arrays; import java.util.Scanner; import java.util.Stack; public class Solution { private static final Stack<Integer> signs = new Stack<>(); public static boolean solve(int[] str, int k, int val, int sign, int index) { if (index == str.length) { return val == k; } val += sign * str[index]; if (solve(str, k, val, 1, index+1) || solve(str, k, val, -1, index+1)) { signs.push(sign); return true; } return false; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int len = sc.nextInt(), k = sc.nextInt(); int[] str = Arrays.stream(sc.next().split("\\*")).mapToInt(s -> s.charAt(0)-48).toArray(); sc.close(); if (solve(str, k, 0, 1, 0)) { if (!signs.isEmpty()) { signs.pop(); } int i = 1; System.out.print(str[0]); while (!signs.isEmpty()) { System.out.print((signs.pop() == 1? "+": "-") + str[i++]); } } } }
CCore Java | Java for BeginnersCore Java | Java for Beginners@codeitupjava · groupe · Technologie
1 312membres62écrivent en 30 jours
Fil de la communauté Ouvrir dans Telegram

Un fil public ouvert issu de l'index de recherche ChatCrawler — « le Google du Telegram public » ; actualisé à mesure que la communauté est explorée. Les heures sont en UTC.

Contenu public uniquement, API officielle de Telegram. À propos · FAQ · Limites de l'index · Retirer une page · Catalogue · Recherche · Comment nous comptons