Submission #8772466


Source Code Expand

"use strict";

const permutateWithRepetitions = (
  permutationOptions,
  permutationLength
) => {
  if (permutationLength === 1) {
    return permutationOptions.map(permutationOption => [permutationOption]);
  }

  const permutations = [];

  const smallerPermutations = permutateWithRepetitions(
    permutationOptions,
    permutationLength - 1
  );

  permutationOptions.forEach((currentOption) => {
    smallerPermutations.forEach((smallerPermutation) => {
      permutations.push([currentOption].concat(smallerPermutation));
    });
  });

  return permutations;
}

const main = arg => {
    arg = arg.trim().split("\n");
    const N = parseInt(arg[0]);
    const S = arg[1].split("").map(n=>parseInt(n));

    // 最大で1000通りしかありえない
    const digits = [0,1,2,3,4,5,6,7,8,9];
    
    const combos = permutateWithRepetitions(digits, 3);
    
    let cnt = 0;
    
    for(let i in combos) {
        let digit1 = combos[i][0];
        let digit2 = combos[i][1];
        let digit3 = combos[i][2];
        
        let flag1 = false;
        let flag2 = false;
        let flag3 = false;

        for(let j in S) {
            if(S[j] === digit1 && flag1 !== true) {
                flag1 = true;
            } else if(S[j] === digit2 && flag1 && flag2 !== true) {
                flag2 = true;
            } else if(S[j] === digit3 && flag1 && flag2) {
                flag3 = true;
            }
        }
        
        if(flag1 && flag2 && flag3) {
            cnt++;
        }
    }
    
    console.log(cnt);
}
main(require('fs').readFileSync('/dev/stdin', 'utf8'));

Submission Info

Submission Time
Task D - Lucky PIN
User oimo23
Language JavaScript (node.js v5.12)
Score 0
Code Size 1665 Byte
Status TLE
Exec Time 2112 ms
Memory 71512 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 14
TLE × 19
Set Name Test Cases
Sample 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt
All 00-sample-01.txt, 00-sample-02.txt, 00-sample-03.txt, 01-corner-01.txt, 01-corner-02.txt, 01-corner-03.txt, 01-corner-04.txt, 02-random-01.txt, 02-random-02.txt, 02-random-03.txt, 02-random-04.txt, 02-random-05.txt, 02-random-06.txt, 02-random-07.txt, 03-random-x-01.txt, 03-random-x-02.txt, 03-random-x-03.txt, 04-expand-01.txt, 04-expand-02.txt, 04-expand-03.txt, 04-expand-04.txt, 04-expand-05.txt, 04-expand-06.txt, 04-expand-07.txt, 04-expand-08.txt, 05-limiting-01.txt, 05-limiting-02.txt, 05-limiting-03.txt, 05-limiting-04.txt, 05-limiting-05.txt, 05-limiting-06.txt, 05-limiting-07.txt, 05-limiting-08.txt
Case Name Status Exec Time Memory
00-sample-01.txt AC 57 ms 7756 KiB
00-sample-02.txt AC 58 ms 7756 KiB
00-sample-03.txt AC 58 ms 7884 KiB
01-corner-01.txt AC 56 ms 7756 KiB
01-corner-02.txt AC 56 ms 7756 KiB
01-corner-03.txt AC 57 ms 7756 KiB
01-corner-04.txt AC 56 ms 7756 KiB
02-random-01.txt AC 57 ms 7756 KiB
02-random-02.txt AC 56 ms 7756 KiB
02-random-03.txt AC 58 ms 7884 KiB
02-random-04.txt AC 60 ms 7884 KiB
02-random-05.txt AC 63 ms 7884 KiB
02-random-06.txt AC 66 ms 7884 KiB
02-random-07.txt TLE 2105 ms 70648 KiB
03-random-x-01.txt AC 1406 ms 10896 KiB
03-random-x-02.txt TLE 2110 ms 67968 KiB
03-random-x-03.txt TLE 2106 ms 70268 KiB
04-expand-01.txt TLE 2105 ms 70028 KiB
04-expand-02.txt TLE 2112 ms 68604 KiB
04-expand-03.txt TLE 2106 ms 70652 KiB
04-expand-04.txt TLE 2112 ms 68992 KiB
04-expand-05.txt TLE 2112 ms 69388 KiB
04-expand-06.txt TLE 2111 ms 71512 KiB
04-expand-07.txt TLE 2111 ms 70652 KiB
04-expand-08.txt TLE 2110 ms 69756 KiB
05-limiting-01.txt TLE 2112 ms 70268 KiB
05-limiting-02.txt TLE 2105 ms 69840 KiB
05-limiting-03.txt TLE 2112 ms 69180 KiB
05-limiting-04.txt TLE 2111 ms 68992 KiB
05-limiting-05.txt TLE 2112 ms 70796 KiB
05-limiting-06.txt TLE 2111 ms 69004 KiB
05-limiting-07.txt TLE 2105 ms 68668 KiB
05-limiting-08.txt TLE 2106 ms 69368 KiB