← Home
package main

import (
	"fmt"
)

func main() {
	var n int
	if _, err := fmt.Scan(&n); err != nil {
		return
	}

	a := make([]int, n)
	for i := 0; i < n; i++ {
		fmt.Scan(&a[i])
	}

	b := make([]int, n)
	for i := 0; i < n; i++ {
		fmt.Scan(&b[i])
	}

	diff := []int{}
	for i := 0; i < n; i++ {
		if a[i] != b[i] {
			diff = append(diff, i)
		}
	}

	p := make([]int, n)
	copy(p, a)

	if len(diff) == 1 {
		idx := diff[0]
		seen := make([]bool, n+1)
		for i := 0; i < n; i++ {
			if i != idx {
				seen[a[i]] = true
			}
		}
		for i := 1; i <= n; i++ {
			if !seen[i] {
				p[idx] = i
				break
			}
		}
	} else if len(diff) == 2 {
		i, j := diff[0], diff[1]
		p[i] = a[i]
		p[j] = b[j]

		seen := make([]bool, n+1)
		isValid := true
		for k := 0; k < n; k++ {
			if p[k] < 1 || p[k] > n || seen[p[k]] {
				isValid = false
				break
			}
			seen[p[k]] = true
		}

		if !isValid {
			p[i] = b[i]
			p[j] = a[j]
		}
	}

	for i := 0; i < n; i++ {
		if i > 0 {
			fmt.Print(" ")
		}
		fmt.Print(p[i])
	}
	fmt.Println()
}