Submission #4650455


Source Code Expand

package main
import (
  "container/list"
  "fmt"
  "strconv"
)
func main() {
  var ni,k,l,c,min int
  var n,d,max string
  m := make(map[string]struct{},10)
  for i:=0;i<10;i++ {
    m[strconv.Itoa(i)] = struct{}{}
  }
  fmt.Scan(&n,&k)
  for i:=0;i<k;i++ {
    fmt.Scan(&d)
    delete(m,d)
  }
  l = len(n)
  d = "0"
  for r,_ := range m {
    if d < r { d = r }
  }
  max = ""
  for i:=0;i<l;i++ {
    max += d
  }
  if max < n {
    max += d
    l++
  }
  queue := list.New()
  queue.PushBack("")
  c = 1
  for i:=0;i<l;i++ {
    for j:=0;j<c;j++ {
      t,_ := queue.Remove(queue.Front()).(string)
      for r,_ := range m {
        queue.PushBack(r+t)
      }
    }
    c *= len(m)
  }
  ni,_ = strconv.Atoi(n)
  min,_ = strconv.Atoi(max)
  for j:=0;j<c;j++ {
    t,_ := queue.Remove(queue.Front()).(string)
    ti,_ := strconv.Atoi(t)
    if ti >= ni && ti < min { min = ti }
  }
  fmt.Println(min)
}

Submission Info

Submission Time
Task C - Iroha's Obsession
User ue1221
Language Go (1.6)
Score 300
Code Size 957 Byte
Status AC
Exec Time 3 ms
Memory 1024 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status AC
AC × 10
Set Name Test Cases
Sample
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_X_01.txt, subtask1_X_02.txt, subtask1_X_03.txt, subtask1_X_04.txt, subtask1_X_05.txt, subtask1_X_06.txt, subtask1_X_07.txt, subtask1_X_08.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 1 ms 512 KB
subtask0_sample_02.txt AC 3 ms 1024 KB
subtask1_X_01.txt AC 1 ms 512 KB
subtask1_X_02.txt AC 1 ms 512 KB
subtask1_X_03.txt AC 1 ms 512 KB
subtask1_X_04.txt AC 1 ms 512 KB
subtask1_X_05.txt AC 1 ms 512 KB
subtask1_X_06.txt AC 1 ms 512 KB
subtask1_X_07.txt AC 1 ms 512 KB
subtask1_X_08.txt AC 1 ms 512 KB