Nu aveti permisiuni pentru a descarca fisierul grader_test1.ok
Cod sursa(job #2679221)
| Utilizator | Data | 29 noiembrie 2020 23:14:43 | |
|---|---|---|---|
| Problema | Submultimi | Scor | 70 |
| Compilator | java | Status | done |
| Runda | Arhiva educationala | Marime | 1.39 kb |
import java.util.*;
import java.io.*;
class Main {
private static boolean [] globalarray;
private static int n;
private static PrintWriter writer;
public static void main(String []args) {
File inputFile = new File("submultimi.in");
File outputFile = new File("submultimi.out");
try {
FileInputStream inputStream = new FileInputStream(inputFile);
Scanner scanner = new Scanner(inputStream);
n = scanner.nextInt();
inputStream.close();
FileOutputStream outputStream = new FileOutputStream(outputFile);
writer = new PrintWriter(outputStream);
globalarray = new boolean[n];
backtracking(0, n);
writer.close();
outputStream.close();
} catch(IOException e) {
}
}
public static void backtracking(int i, int n){
if (i == n){
printit();
return;
}
globalarray[i] = false;
backtracking(i + 1, n);
globalarray[i] = true;
backtracking(i + 1, n);
}
public static void printit(){
boolean skip = true;
for (int i = 0; i < n; i++){
if (globalarray[i]){
if (!skip){
writer.print(' ');
}
writer.print(i + 1);
skip = false;
}
}
if (!skip)
writer.print('\n');
}
}
