結果
| 問題 | 
                            No.197 手品
                             | 
                    
| コンテスト | |
| ユーザー | 
                             tsuchinaga
                         | 
                    
| 提出日時 | 2019-03-08 12:54:40 | 
| 言語 | Go  (1.23.4)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 2 ms / 1,000 ms | 
| コード長 | 873 bytes | 
| コンパイル時間 | 12,816 ms | 
| コンパイル使用メモリ | 228,964 KB | 
| 実行使用メモリ | 6,944 KB | 
| 最終ジャッジ日時 | 2024-07-20 03:57:28 | 
| 合計ジャッジ時間 | 12,772 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge1 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 4 | 
| other | AC * 43 | 
ソースコード
package main
import (
	"fmt"
	"strings"
)
func main() {
	var sb, sa string
	var n int
	_, _ = fmt.Scan(&sb, &n, &sa)
	if strings.Count(sb, "o") != strings.Count(sa, "o") { // 数が変わってるなら成功
		fmt.Println("SUCCESS")
		return
	}
	if n == 0 {
		if sa != sb { // 動かさないで一致しなければ成功
			fmt.Println("SUCCESS")
		} else {
			fmt.Println("FAILURE")
		}
		return
	}
	if n >= 2 { // 2回動かせたらどんな形にでもできる
		fmt.Println("FAILURE")
		return
	}
	// ここまできたら、コインの数は変わってなくて、あと動かせるのは1回
	// beforeの右2つか左2つを入れ替えてafterと一致すれば失敗、それ以外は成功
	if sa == string([]uint8{sb[1], sb[0], sb[2]}) || sa == string([]uint8{sb[0], sb[2], sb[1]}) {
		fmt.Println("FAILURE")
	} else {
		fmt.Println("SUCCESS")
	}
}
            
            
            
        
            
tsuchinaga