結果
| 問題 | No.3109 Swap members |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-04-19 01:23:40 |
| 言語 | Go (1.23.4) |
| 結果 |
AC
|
| 実行時間 | 191 ms / 2,000 ms |
| コード長 | 2,303 bytes |
| 記録 | |
| コンパイル時間 | 19,223 ms |
| コンパイル使用メモリ | 238,216 KB |
| 実行使用メモリ | 14,340 KB |
| 最終ジャッジ日時 | 2025-04-19 01:24:06 |
| 合計ジャッジ時間 | 20,012 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 52 |
ソースコード
package main
import (
"bufio"
"fmt"
"os"
)
/*
By Raccoon Byte
*/
var reader *bufio.Reader = bufio.NewReader(os.Stdin)
var writer *bufio.Writer = bufio.NewWriter(os.Stdout)
func printf(format string, a ...interface{}) { fmt.Fprintf(writer, format, a...) }
func scanf(format string, a ...interface{}) { fmt.Fscanf(reader, format, a...) }
func getInt(num *int) {
scanf("%d\n", num)
}
func getInt2(num *int, num2 *int) {
scanf("%d %d\n", num, num2)
}
func getInt3(num *int, num2 *int, num3 *int) {
scanf("%d %d %d\n", num, num2, num3)
}
func getInt4(num *int, num2 *int, num3 *int, num4 *int) {
scanf("%d %d %d %d\n", num, num2, num3, num4)
}
func getInt5(num *int, num2 *int, num3 *int, num4 *int, num5 *int) {
scanf("%d %d %d %d %d\n", num, num2, num3, num4, num5)
}
func getInt6(num *int, num2 *int, num3 *int, num4 *int, num5 *int, num6 *int) {
scanf("%d %d %d %d %d %d\n", num, num2, num3, num4, num5, num6)
}
func getLine(s *string) {
line, _ := reader.ReadString('\n')
*s = line[:len(line)-1]
}
func getString(s *string) {
scanf("%s\n", s)
}
func getArrInt(arr []int, n int) {
for i := 0; i < n; i++ {
scanf("%d", &arr[i])
}
scanf("\n")
}
func getArrString(arr []string, n int) {
for i := 0; i < n; i++ {
scanf("%s", &arr[i])
}
scanf("\n")
}
func printArrInt(arr []int) {
for i := 0; i < len(arr); i++ {
if i > 0 {
printf(" ")
}
printf("%d", arr[i])
}
printf("\n")
}
func printArrInt2D(arr [][]int) {
for i := 0; i < len(arr); i++ {
printArrInt(arr[i])
}
}
func printArrString(arr []string) {
for i := 0; i < len(arr); i++ {
printf("%s\n", arr[i])
}
}
func abs(num int) int {
if num >= 0 {
return num
}
return -num
}
func min(num1 int, num2 int) int {
if num1 <= num2 {
return num1
}
return num2
}
func max(num1 int, num2 int) int {
if num1 >= num2 {
return num1
}
return num2
}
/*
End of template
*/
func solve() {
var n, k int
getInt2(&n, &k)
flag := true
m := map[string]int{}
var name string
for i := range n {
getString(&name)
m[name] = i % k
}
for i := range n {
getString(&name)
if m[name] != i%k {
flag = false
}
}
if flag {
printf("Yes\n")
} else {
printf("No\n")
}
}
func main() {
defer writer.Flush()
tc := 1
// getInt(&tc)
for t := 0; t < tc; t++ {
solve()
}
}