Guest User

Untitled

a guest
Feb 17th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.06 KB | None | 0 0
  1. package main
  2.  
  3. import "fmt"
  4.  
  5. const (
  6. maxInt = int(^uint(0) >> 1)
  7. minInt = -maxInt - 1
  8. )
  9.  
  10. func isMerge(a1, a2 []int) bool {
  11. min1, max1 := maxInt, minInt
  12. for _, e1 := range a1 {
  13. if min1 > e1 {
  14. min1 = e1
  15. }
  16. if max1 < e1 {
  17. max1 = e1
  18. }
  19. }
  20.  
  21. for _, e2 := range a2 {
  22. if e2 == min1-1 || e2 == max1+1 {
  23. return true
  24. }
  25. }
  26.  
  27. return false
  28. }
  29.  
  30. func main() {
  31. a1 := []int{100, 101}
  32. a2 := []int{103, 104, 102}
  33. a3 := []int{103, 104, 105}
  34. fmt.Println(a1, a2, isMerge(a1, a2))
  35. fmt.Println(a2, a1, isMerge(a2, a1))
  36. fmt.Println(a1, a3, isMerge(a1, a3))
  37. fmt.Println(a3, a1, isMerge(a3, a1))
  38.  
  39. a4 := []int{222, 221, 220, 219}
  40. a5 := []int{221, 222, 223, 225, 224}
  41. fmt.Println(a4, a5, isMerge(a4, a5))
  42. fmt.Println(a5, a4, isMerge(a5, a4))
  43. }
  44.  
  45. [100 101] [103 104 102] true
  46. [103 104 102] [100 101] true
  47. [100 101] [103 104 105] false
  48. [103 104 105] [100 101] false
  49. [222 221 220 219] [221 222 223 225 224] true
  50. [221 222 223 225 224] [222 221 220 219] true
Add Comment
Please, Sign In to add comment