Submission #1662128
Source Code Expand
Copy
package main import ( "bufio" "fmt" "math" "os" "strconv" ) func f(b, n int) int { if n < b { return n } return f(b, n/b) + n%b } func main() { scn := newScanner() n := scn.nextInt() s := scn.nextInt() ans := -1 if n < s { ans = -1 } else if n == s { ans = n + 1 } else { for i := 2; i*i <= n; i++ { if f(i, n) == s { ans = i break } } if ans == -1 { for i := int(math.Sqrt(float64(n))); i > 0; i-- { if (n-s)%i == 0 && f((n-s)/i+1, n) == s { ans = (n-s)/i + 1 } } } } fmt.Println(ans) } func max(a ...int) int { r := a[0] for i := 0; i < len(a); i++ { if r < a[i] { r = a[i] } } return r } func min(a ...int) int { r := a[0] for i := 0; i < len(a); i++ { if r > a[i] { r = a[i] } } return r } type scanner struct { r *bufio.Reader buf []byte p int } func newScanner() *scanner { rdr := bufio.NewReaderSize(os.Stdin, 10000) return &scanner{r: rdr} } func (s *scanner) next() string { s.pre() start := s.p for ; s.p < len(s.buf); s.p++ { if s.buf[s.p] == ' ' { break } } result := string(s.buf[start:s.p]) s.p++ return result } func (s *scanner) nextLine() string { s.pre() start := s.p s.p = len(s.buf) return string(s.buf[start:]) } func (s *scanner) nextInt() int { v, _ := strconv.Atoi(s.next()) return v } func (s *scanner) nextInt64() int64 { v, _ := strconv.ParseInt(s.next(), 10, 64) return v } func (s *scanner) pre() { if s.p >= len(s.buf) { s.readLine() s.p = 0 } } func (s *scanner) readLine() { s.buf = make([]byte, 0) for { l, p, e := s.r.ReadLine() if e != nil { panic(e) } s.buf = append(s.buf, l...) if !p { break } } }
Submission Info
Submission Time | |
---|---|
Task | D - Digit Sum |
User | fmhr |
Language | Go (1.6) |
Score | 0 |
Code Size | 1806 Byte |
Status | WA |
Exec Time | 20 ms |
Memory | 640 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 500 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | subtask1_87654_30.txt, subtask1_87654_138.txt, subtask1_87654_45678.txt, subtask1_31415926535_1.txt, subtask1_1_31415926535.txt |
All | subtask1_100000000000_1.txt, subtask1_100000000000_100000000000.txt, subtask1_100000000000_2.txt, subtask1_100000000000_3.txt, subtask1_100000000000_50000000000.txt, subtask1_100000000000_50000000001.txt, subtask1_100000000000_99999999999.txt, subtask1_16983563041_1.txt, subtask1_1_1.txt, subtask1_1_2.txt, subtask1_1_31415926535.txt, subtask1_239484768_194586924.txt, subtask1_2_1.txt, subtask1_2_2.txt, subtask1_31415926535_1.txt, subtask1_49234683534_2461734011.txt, subtask1_4_1.txt, subtask1_58640129658_232122496.txt, subtask1_68719476735_35.txt, subtask1_68719476735_36.txt, subtask1_68719476735_37.txt, subtask1_68719476736_1.txt, subtask1_68719476736_2.txt, subtask1_72850192441_16865701.txt, subtask1_79285169301_27.txt, subtask1_82914867733_1676425945.txt, subtask1_8594813796_75700.txt, subtask1_87654_12345.txt, subtask1_87654_138.txt, subtask1_87654_30.txt, subtask1_87654_4294967308.txt, subtask1_87654_45678.txt, subtask1_97822032312_49157112.txt, subtask1_98750604051_977728851.txt, subtask1_99999515529_1.txt, subtask1_99999515529_316226.txt, subtask1_99999515529_316227.txt, subtask1_99999515529_316228.txt, subtask1_99999515529_49999757765.txt, subtask1_99999515529_49999757766.txt, subtask1_99999515530_2.txt, subtask1_99999999977_1.txt, subtask1_99999999977_2.txt, subtask1_99999999977_49999999989.txt, subtask1_99999999977_49999999990.txt, subtask1_99999999999_1.txt, subtask1_99999999999_100000000000.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask1_100000000000_1.txt | AC | 1 ms | 640 KB |
subtask1_100000000000_100000000000.txt | AC | 1 ms | 640 KB |
subtask1_100000000000_2.txt | WA | 20 ms | 640 KB |
subtask1_100000000000_3.txt | AC | 20 ms | 640 KB |
subtask1_100000000000_50000000000.txt | AC | 20 ms | 640 KB |
subtask1_100000000000_50000000001.txt | AC | 20 ms | 640 KB |
subtask1_100000000000_99999999999.txt | AC | 20 ms | 640 KB |
subtask1_16983563041_1.txt | AC | 1 ms | 640 KB |
subtask1_1_1.txt | AC | 1 ms | 640 KB |
subtask1_1_2.txt | AC | 1 ms | 640 KB |
subtask1_1_31415926535.txt | AC | 1 ms | 640 KB |
subtask1_239484768_194586924.txt | AC | 2 ms | 640 KB |
subtask1_2_1.txt | AC | 1 ms | 640 KB |
subtask1_2_2.txt | AC | 1 ms | 640 KB |
subtask1_31415926535_1.txt | AC | 12 ms | 640 KB |
subtask1_49234683534_2461734011.txt | AC | 14 ms | 640 KB |
subtask1_4_1.txt | AC | 1 ms | 640 KB |
subtask1_58640129658_232122496.txt | WA | 16 ms | 640 KB |
subtask1_68719476735_35.txt | AC | 8 ms | 640 KB |
subtask1_68719476735_36.txt | AC | 1 ms | 640 KB |
subtask1_68719476735_37.txt | WA | 17 ms | 640 KB |
subtask1_68719476736_1.txt | AC | 1 ms | 640 KB |
subtask1_68719476736_2.txt | AC | 1 ms | 640 KB |
subtask1_72850192441_16865701.txt | WA | 17 ms | 640 KB |
subtask1_79285169301_27.txt | AC | 1 ms | 640 KB |
subtask1_82914867733_1676425945.txt | WA | 18 ms | 640 KB |
subtask1_8594813796_75700.txt | AC | 3 ms | 640 KB |
subtask1_87654_12345.txt | WA | 1 ms | 640 KB |
subtask1_87654_138.txt | AC | 1 ms | 640 KB |
subtask1_87654_30.txt | AC | 1 ms | 640 KB |
subtask1_87654_4294967308.txt | AC | 1 ms | 640 KB |
subtask1_87654_45678.txt | AC | 1 ms | 640 KB |
subtask1_97822032312_49157112.txt | WA | 20 ms | 640 KB |
subtask1_98750604051_977728851.txt | WA | 20 ms | 640 KB |
subtask1_99999515529_1.txt | AC | 16 ms | 640 KB |
subtask1_99999515529_316226.txt | WA | 20 ms | 640 KB |
subtask1_99999515529_316227.txt | WA | 20 ms | 640 KB |
subtask1_99999515529_316228.txt | WA | 20 ms | 640 KB |
subtask1_99999515529_49999757765.txt | AC | 20 ms | 640 KB |
subtask1_99999515529_49999757766.txt | AC | 20 ms | 640 KB |
subtask1_99999515530_2.txt | AC | 16 ms | 640 KB |
subtask1_99999999977_1.txt | AC | 20 ms | 640 KB |
subtask1_99999999977_2.txt | AC | 20 ms | 640 KB |
subtask1_99999999977_49999999989.txt | AC | 20 ms | 640 KB |
subtask1_99999999977_49999999990.txt | AC | 20 ms | 640 KB |
subtask1_99999999999_1.txt | AC | 20 ms | 640 KB |
subtask1_99999999999_100000000000.txt | AC | 1 ms | 640 KB |