結果
問題 | No.591 (^o^)/ |
ユーザー |
![]() |
提出日時 | 2017-11-10 22:22:49 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 3,260 bytes |
コンパイル時間 | 12,139 ms |
コンパイル使用メモリ | 227,924 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-24 16:19:48 |
合計ジャッジ時間 | 12,164 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 7 |
ソースコード
package mainimport ("bufio""fmt""log""os""strconv")// const abcd = "abcdefghijklmnopqrstuvwxyz"// const ABCD = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"// var dy = [...]int{1, 1, 0, -1, -1, -1, 0, 1}// var dx = [...]int{0, 1, 1, 1, 0, -1, -1, -1}// var dx = [...]int{0, 1, 0, -1}// var dy = [...]int{1, 0, -1, 0}var inf int = 1e13var mod = 1000000007var next = newScanner()// ---------------------------------------------------------func main() {log.SetFlags(log.Lshortfile)T1 := next.String()T2 := next.String()fmt.Println("(" + T1 + T2 + T1 + ")/")}// ---------------------------------------------------------// Pair is...type Pair struct {a, b int}// Pairs is sorted by []Pair structtype Pairs []Pairfunc (p Pairs) Len() int {return len(p)}func (p Pairs) Swap(i, j int) {p[i], p[j] = p[j], p[i]}func (p Pairs) Less(i, j int) bool {if p[i].a < p[j].a {return true} else if p[i].a == p[j].a {return p[i].b < p[j].b}return false}// ------int method-------------------------func in(c, a, z int) bool {return c >= a && c < z}func btoi(b bool) int {if b {return 1}return 0}func itob(a int) bool {if a == 0 {return false}return true}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}func sum(a []int) int {r := 0for i := 0; i < len(a); i++ {r += a[i]}return r}func pro(a []int) int {r := 1for i := 0; i < len(a); i++ {r *= a[i]}return r}func fill(a []int, n int) []int {for i := 0; i < len(a); i++ {a[i] = n}return a}func minmax(a, b int) (int, int) {if a > b {return b, a}return a, b}func abs(a int) int {if a < 0 {return -a}return a}// ---------- buffered scanner -----------------------------------------func iferr(err error) {if err != nil {panic(err)}}type scanner struct {r *bufio.Readerbuf []bytep int}func newScanner() *scanner {rdr := bufio.NewReaderSize(os.Stdin, 10000)return &scanner{r: rdr}}func (s *scanner) next() string {s.pre()start := s.pfor ; 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) Line() string {s.pre()start := s.ps.p = len(s.buf)return string(s.buf[start:])}func (s *scanner) String() string {return s.next()}func (s *scanner) Int() int {v, e := strconv.Atoi(s.next())iferr(e)return v}func (s *scanner) Ints(n int) []int {r := make([]int, n)for i := 0; i < n; i++ {r[i] = s.Int()}return r}func (s *scanner) Int64() int64 {v, e := strconv.ParseInt(s.next(), 10, 64)iferr(e)return v}func (s *scanner) Uint64() uint64 {v, e := strconv.ParseUint(s.next(), 10, 64)iferr(e)return v}func (s *scanner) Float64() float64 {v, e := strconv.ParseFloat(s.next(), 64)iferr(e)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()iferr(e)s.buf = append(s.buf, l...)if !p {break}}}