CSES - KILO 2016 1/5 - Results
Submission details
Task:ID
Sender:michaeljackson123
Submission time:2016-09-06 22:50:29 +0300
Language:Java
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.10 sdetails
#2ACCEPTED0.10 sdetails
#3ACCEPTED0.29 sdetails
#4ACCEPTED0.28 sdetails
#5ACCEPTED0.16 sdetails
#6ACCEPTED0.16 sdetails
#7ACCEPTED0.23 sdetails
#8ACCEPTED0.14 sdetails
#9ACCEPTED0.17 sdetails
#10ACCEPTED0.18 sdetails
#11ACCEPTED0.16 sdetails
#12ACCEPTED0.15 sdetails
#13ACCEPTED0.16 sdetails
#14ACCEPTED0.19 sdetails
#15ACCEPTED0.18 sdetails

Code

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */



import java.util.ArrayList;

/**
 *
 * @author miarvirt
 */
public class JavaApplication825 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        
        IO io = new IO();
        
        io.println(id(io.nextInt()));
        
        io.close();
    }
    
    private static String id(int n) {
        ArrayList<String> doneIds= new ArrayList();
        long number = 0;
        loop1: while (doneIds.size() < n) {
            String idFromNumber = makeIdFromNumber(number);
            for (int i = 0; i < doneIds.size(); i++) {
                int differenceCounter = 0;
                String stringfromDoneIds = doneIds.get(i);
                for (int j = 9; j >= 0; j--) {
                    if (idFromNumber.charAt(j) != stringfromDoneIds.charAt(j)) {
                        differenceCounter++;
                    }
                }
                if (differenceCounter < 2) {
                    number++;
                    continue loop1;
                }
            }
            doneIds.add(idFromNumber);
            number++;
        }
        return doneIds.get(doneIds.size() - 1);
    }

    private static String makeIdFromNumber(long number) {
        String IdFromNumber = String.valueOf(number);
        while (IdFromNumber.length() < 10) {
            IdFromNumber = "0" + IdFromNumber;
        }
        return IdFromNumber;
    }
    
    
    
}

Test details

Test 1

Verdict: ACCEPTED

input
1

correct output
0000000000

user output
0000000000

Test 2

Verdict: ACCEPTED

input
2

correct output
0000000011

user output
0000000011

Test 3

Verdict: ACCEPTED

input
1024

correct output
0000014072

user output
0000014072

Test 4

Verdict: ACCEPTED

input
989

correct output
0000013543

user output
0000013543

Test 5

Verdict: ACCEPTED

input
197

correct output
0000002507

user output
0000002507

Test 6

Verdict: ACCEPTED

input
328

correct output
0000004271

user output
0000004271

Test 7

Verdict: ACCEPTED

input
967

correct output
0000013301

user output
0000013301

Test 8

Verdict: ACCEPTED

input
130

correct output
0000001616

user output
0000001616

Test 9

Verdict: ACCEPTED

input
170

correct output
0000002211

user output
0000002211

Test 10

Verdict: ACCEPTED

input
455

correct output
0000005984

user output
0000005984

Test 11

Verdict: ACCEPTED

input
100

correct output
0000001230

user output
0000001230

Test 12

Verdict: ACCEPTED

input
104

correct output
0000001274

user output
0000001274

Test 13

Verdict: ACCEPTED

input
415

correct output
0000005423

user output
0000005423

Test 14

Verdict: ACCEPTED

input
676

correct output
0000009393

user output
0000009393

Test 15

Verdict: ACCEPTED

input
455

correct output
0000005984

user output
0000005984