結果
問題 | No.411 昇順昇順ソート |
ユーザー |
|
提出日時 | 2016-08-12 19:09:42 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 95 ms / 2,000 ms |
コード長 | 530 bytes |
コンパイル時間 | 15,332 ms |
コンパイル使用メモリ | 220,548 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-07 12:11:28 |
合計ジャッジ時間 | 16,932 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 30 |
ソースコード
package main import "fmt" func main() { var N, K uint fmt.Scan(&N, &K) count := 0 for i := uint(1); i < 1 << N; i++ { mx1 := uint(0) mn1 := N mn2 := N for j := uint(0); j < N; j++ { if (1 << j & i) > 0 { mx1 = max(mx1, j + 1) mn1 = min(mn1, j + 1) } else { mn2 = min(mn2, j + 1) } } if mn1 == K && mx1 > mn2 { count++ } } fmt.Println(count) } func max(a uint, b uint) uint { if a < b { return b } return a } func min(a uint, b uint) uint { if a < b { return a } return b }