結果

問題 No.217 魔方陣を作ろう
ユーザー btkbtk
提出日時 2015-05-26 22:53:23
言語 C++11
(gcc 11.4.0)
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 13,190 bytes
コンパイル時間 599 ms
コンパイル使用メモリ 62,096 KB
実行使用メモリ 4,380 KB
最終ジャッジ日時 2023-09-20 14:56:17
合計ジャッジ時間 1,598 ms
ジャッジサーバーID
(参考情報)
judge12 / judge11
このコードへのチャレンジ(β)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
4,376 KB
testcase_01 AC 2 ms
4,376 KB
testcase_02 AC 2 ms
4,380 KB
testcase_03 AC 1 ms
4,380 KB
testcase_04 AC 2 ms
4,380 KB
testcase_05 AC 1 ms
4,380 KB
testcase_06 AC 1 ms
4,380 KB
testcase_07 AC 1 ms
4,380 KB
testcase_08 AC 2 ms
4,376 KB
testcase_09 AC 2 ms
4,380 KB
testcase_10 AC 2 ms
4,380 KB
testcase_11 AC 1 ms
4,376 KB
testcase_12 AC 1 ms
4,376 KB
testcase_13 AC 2 ms
4,376 KB
testcase_14 AC 1 ms
4,380 KB
testcase_15 AC 2 ms
4,380 KB
testcase_16 AC 2 ms
4,380 KB
testcase_17 AC 2 ms
4,376 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
#include<fstream>
#include<string>
#include<algorithm>
using namespace std;
int num[30][400] = {
	{},
	{},
	{},
	{ 6, 1, 8, 7, 5, 3, 2, 9, 4 },
	{ 1, 15, 14, 4, 12, 6, 7, 9, 8, 10, 11, 5, 13, 3, 2, 16 },
	{ 15, 8, 1, 24, 17, 16, 14, 7, 5, 23, 22, 20, 13, 6, 4, 3, 21, 19, 12, 10, 9, 2, 25, 18, 11 },
	{ 1, 32, 33, 4, 35, 6, 12, 8, 27, 28, 11, 25, 18, 17, 22, 21, 20, 13, 19, 23, 16, 15, 14, 24, 30, 26, 10, 9, 29, 7, 31, 5, 3, 34, 2, 36 },
	{ 28, 19, 10, 1, 48, 39, 30, 29, 27, 18, 9, 7, 47, 38, 37, 35, 26, 17, 8, 6, 46, 45, 36, 34, 25, 16, 14, 5, 4, 44, 42, 33, 24, 15, 13, 12, 3, 43, 41, 32, 23, 21, 20, 11, 2, 49, 40, 31, 22 },
	{ 1, 63, 62, 4, 5, 59, 58, 8, 56, 10, 11, 53, 52, 14, 15, 49, 48, 18, 19, 45, 44, 22, 23, 41, 25, 39, 38, 28, 29, 35, 34, 32, 33, 31, 30, 36, 37, 27, 26, 40, 24, 42, 43, 21, 20, 46, 47, 17, 16, 50, 51, 13, 12, 54, 55, 9, 57, 7, 6, 60, 61, 3, 2, 64 },
	{ 45, 34, 23, 12, 1, 80, 69, 58, 47, 46, 44, 33, 22, 11, 9, 79, 68, 57, 56, 54, 43, 32, 21, 10, 8, 78, 67, 66, 55, 53, 42, 31, 20, 18, 7, 77, 76, 65, 63, 52, 41, 30, 19, 17, 6, 5, 75, 64, 62, 51, 40, 29, 27, 16, 15, 4, 74, 72, 61, 50, 39, 28, 26, 25, 14, 3, 73, 71, 60, 49, 38, 36, 35, 24, 13, 2, 81, 70, 59, 48, 37 },
	{ 1, 92, 8, 94, 95, 6, 97, 3, 99, 10, 20, 12, 83, 17, 86, 85, 14, 88, 19, 81, 71, 29, 23, 74, 75, 26, 77, 28, 72, 30, 40, 62, 38, 34, 65, 66, 37, 63, 39, 61, 50, 59, 48, 47, 56, 55, 54, 43, 52, 41, 51, 49, 53, 57, 46, 45, 44, 58, 42, 60, 70, 32, 68, 64, 36, 35, 67, 33, 69, 31, 21, 79, 73, 27, 25, 76, 24, 78, 22, 80, 90, 82, 18, 84, 16, 15, 87, 13, 89, 11, 91, 9, 93, 7, 5, 96, 4, 98, 2, 100 },
	{ 66, 53, 40, 27, 14, 1, 120, 107, 94, 81, 68, 67, 65, 52, 39, 26, 13, 11, 119, 106, 93, 80, 79, 77, 64, 51, 38, 25, 12, 10, 118, 105, 92, 91, 78, 76, 63, 50, 37, 24, 22, 9, 117, 104, 103, 90, 88, 75, 62, 49, 36, 23, 21, 8, 116, 115, 102, 89, 87, 74, 61, 48, 35, 33, 20, 7, 6, 114, 101, 99, 86, 73, 60, 47, 34, 32, 19, 18, 5, 113, 100, 98, 85, 72, 59, 46, 44, 31, 30, 17, 4, 112, 110, 97, 84, 71, 58, 45, 43, 42, 29, 16, 3, 111, 109, 96, 83, 70, 57, 55, 54, 41, 28, 15, 2, 121, 108, 95, 82, 69, 56 },
	{ 1, 143, 142, 4, 5, 139, 138, 8, 9, 135, 134, 12, 132, 14, 15, 129, 128, 18, 19, 125, 124, 22, 23, 121, 120, 26, 27, 117, 116, 30, 31, 113, 112, 34, 35, 109, 37, 107, 106, 40, 41, 103, 102, 44, 45, 99, 98, 48, 49, 95, 94, 52, 53, 91, 90, 56, 57, 87, 86, 60, 84, 62, 63, 81, 80, 66, 67, 77, 76, 70, 71, 73, 72, 74, 75, 69, 68, 78, 79, 65, 64, 82, 83, 61, 85, 59, 58, 88, 89, 55, 54, 92, 93, 51, 50, 96, 97, 47, 46, 100, 101, 43, 42, 104, 105, 39, 38, 108, 36, 110, 111, 33, 32, 114, 115, 29, 28, 118, 119, 25, 24, 122, 123, 21, 20, 126, 127, 17, 16, 130, 131, 13, 133, 11, 10, 136, 137, 7, 6, 140, 141, 3, 2, 144 },
	{ 91, 76, 61, 46, 31, 16, 1, 168, 153, 138, 123, 108, 93, 92, 90, 75, 60, 45, 30, 15, 13, 167, 152, 137, 122, 107, 106, 104, 89, 74, 59, 44, 29, 14, 12, 166, 151, 136, 121, 120, 105, 103, 88, 73, 58, 43, 28, 26, 11, 165, 150, 135, 134, 119, 117, 102, 87, 72, 57, 42, 27, 25, 10, 164, 149, 148, 133, 118, 116, 101, 86, 71, 56, 41, 39, 24, 9, 163, 162, 147, 132, 130, 115, 100, 85, 70, 55, 40, 38, 23, 8, 7, 161, 146, 131, 129, 114, 99, 84, 69, 54, 52, 37, 22, 21, 6, 160, 145, 143, 128, 113, 98, 83, 68, 53, 51, 36, 35, 20, 5, 159, 144, 142, 127, 112, 97, 82, 67, 65, 50, 49, 34, 19, 4, 158, 156, 141, 126, 111, 96, 81, 66, 64, 63, 48, 33, 18, 3, 157, 155, 140, 125, 110, 95, 80, 78, 77, 62, 47, 32, 17, 2, 169, 154, 139, 124, 109, 94, 79 },
	{ 1, 184, 12, 186, 10, 188, 189, 8, 191, 5, 193, 3, 195, 14, 28, 16, 171, 25, 173, 23, 176, 175, 20, 178, 18, 180, 27, 169, 155, 41, 31, 158, 38, 160, 161, 36, 163, 33, 165, 40, 156, 42, 56, 142, 54, 46, 145, 51, 148, 147, 48, 150, 53, 143, 55, 141, 127, 69, 129, 67, 61, 132, 133, 64, 135, 66, 130, 68, 128, 70, 84, 114, 82, 116, 80, 76, 119, 120, 79, 117, 81, 115, 83, 113, 98, 111, 96, 109, 94, 93, 106, 105, 104, 89, 102, 87, 100, 85, 99, 97, 101, 95, 103, 107, 92, 91, 90, 108, 88, 110, 86, 112, 126, 72, 124, 74, 122, 118, 78, 77, 121, 75, 123, 73, 125, 71, 57, 139, 59, 137, 131, 65, 63, 134, 62, 136, 60, 138, 58, 140, 154, 44, 152, 144, 52, 146, 50, 49, 149, 47, 151, 45, 153, 43, 29, 167, 157, 39, 159, 37, 35, 162, 34, 164, 32, 166, 30, 168, 182, 170, 26, 172, 24, 174, 22, 21, 177, 19, 179, 17, 181, 15, 183, 13, 185, 11, 187, 9, 7, 190, 6, 192, 4, 194, 2, 196 },
	{ 120, 103, 86, 69, 52, 35, 18, 1, 224, 207, 190, 173, 156, 139, 122, 121, 119, 102, 85, 68, 51, 34, 17, 15, 223, 206, 189, 172, 155, 138, 137, 135, 118, 101, 84, 67, 50, 33, 16, 14, 222, 205, 188, 171, 154, 153, 136, 134, 117, 100, 83, 66, 49, 32, 30, 13, 221, 204, 187, 170, 169, 152, 150, 133, 116, 99, 82, 65, 48, 31, 29, 12, 220, 203, 186, 185, 168, 151, 149, 132, 115, 98, 81, 64, 47, 45, 28, 11, 219, 202, 201, 184, 167, 165, 148, 131, 114, 97, 80, 63, 46, 44, 27, 10, 218, 217, 200, 183, 166, 164, 147, 130, 113, 96, 79, 62, 60, 43, 26, 9, 8, 216, 199, 182, 180, 163, 146, 129, 112, 95, 78, 61, 59, 42, 25, 24, 7, 215, 198, 181, 179, 162, 145, 128, 111, 94, 77, 75, 58, 41, 40, 23, 6, 214, 197, 195, 178, 161, 144, 127, 110, 93, 76, 74, 57, 56, 39, 22, 5, 213, 196, 194, 177, 160, 143, 126, 109, 92, 90, 73, 72, 55, 38, 21, 4, 212, 210, 193, 176, 159, 142, 125, 108, 91, 89, 88, 71, 54, 37, 20, 3, 211, 209, 192, 175, 158, 141, 124, 107, 105, 104, 87, 70, 53, 36, 19, 2, 225, 208, 191, 174, 157, 140, 123, 106 },
	{ 1, 255, 254, 4, 5, 251, 250, 8, 9, 247, 246, 12, 13, 243, 242, 16, 240, 18, 19, 237, 236, 22, 23, 233, 232, 26, 27, 229, 228, 30, 31, 225, 224, 34, 35, 221, 220, 38, 39, 217, 216, 42, 43, 213, 212, 46, 47, 209, 49, 207, 206, 52, 53, 203, 202, 56, 57, 199, 198, 60, 61, 195, 194, 64, 65, 191, 190, 68, 69, 187, 186, 72, 73, 183, 182, 76, 77, 179, 178, 80, 176, 82, 83, 173, 172, 86, 87, 169, 168, 90, 91, 165, 164, 94, 95, 161, 160, 98, 99, 157, 156, 102, 103, 153, 152, 106, 107, 149, 148, 110, 111, 145, 113, 143, 142, 116, 117, 139, 138, 120, 121, 135, 134, 124, 125, 131, 130, 128, 129, 127, 126, 132, 133, 123, 122, 136, 137, 119, 118, 140, 141, 115, 114, 144, 112, 146, 147, 109, 108, 150, 151, 105, 104, 154, 155, 101, 100, 158, 159, 97, 96, 162, 163, 93, 92, 166, 167, 89, 88, 170, 171, 85, 84, 174, 175, 81, 177, 79, 78, 180, 181, 75, 74, 184, 185, 71, 70, 188, 189, 67, 66, 192, 193, 63, 62, 196, 197, 59, 58, 200, 201, 55, 54, 204, 205, 51, 50, 208, 48, 210, 211, 45, 44, 214, 215, 41, 40, 218, 219, 37, 36, 222, 223, 33, 32, 226, 227, 29, 28, 230, 231, 25, 24, 234, 235, 21, 20, 238, 239, 17, 241, 15, 14, 244, 245, 11, 10, 248, 249, 7, 6, 252, 253, 3, 2, 256 },
	{ 153, 134, 115, 96, 77, 58, 39, 20, 1, 288, 269, 250, 231, 212, 193, 174, 155, 154, 152, 133, 114, 95, 76, 57, 38, 19, 17, 287, 268, 249, 230, 211, 192, 173, 172, 170, 151, 132, 113, 94, 75, 56, 37, 18, 16, 286, 267, 248, 229, 210, 191, 190, 171, 169, 150, 131, 112, 93, 74, 55, 36, 34, 15, 285, 266, 247, 228, 209, 208, 189, 187, 168, 149, 130, 111, 92, 73, 54, 35, 33, 14, 284, 265, 246, 227, 226, 207, 188, 186, 167, 148, 129, 110, 91, 72, 53, 51, 32, 13, 283, 264, 245, 244, 225, 206, 204, 185, 166, 147, 128, 109, 90, 71, 52, 50, 31, 12, 282, 263, 262, 243, 224, 205, 203, 184, 165, 146, 127, 108, 89, 70, 68, 49, 30, 11, 281, 280, 261, 242, 223, 221, 202, 183, 164, 145, 126, 107, 88, 69, 67, 48, 29, 10, 9, 279, 260, 241, 222, 220, 201, 182, 163, 144, 125, 106, 87, 85, 66, 47, 28, 27, 8, 278, 259, 240, 238, 219, 200, 181, 162, 143, 124, 105, 86, 84, 65, 46, 45, 26, 7, 277, 258, 239, 237, 218, 199, 180, 161, 142, 123, 104, 102, 83, 64, 63, 44, 25, 6, 276, 257, 255, 236, 217, 198, 179, 160, 141, 122, 103, 101, 82, 81, 62, 43, 24, 5, 275, 256, 254, 235, 216, 197, 178, 159, 140, 121, 119, 100, 99, 80, 61, 42, 23, 4, 274, 272, 253, 234, 215, 196, 177, 158, 139, 120, 118, 117, 98, 79, 60, 41, 22, 3, 273, 271, 252, 233, 214, 195, 176, 157, 138, 136, 135, 116, 97, 78, 59, 40, 21, 2, 289, 270, 251, 232, 213, 194, 175, 156, 137 },
	{ 1, 308, 16, 310, 14, 312, 12, 314, 315, 10, 317, 7, 319, 5, 321, 3, 323, 18, 36, 20, 291, 33, 293, 31, 295, 29, 298, 297, 26, 300, 24, 302, 22, 304, 35, 289, 271, 53, 39, 274, 50, 276, 48, 278, 279, 46, 281, 43, 283, 41, 285, 52, 272, 54, 72, 254, 70, 58, 257, 67, 259, 65, 262, 261, 62, 264, 60, 266, 69, 255, 71, 253, 235, 89, 237, 87, 77, 240, 84, 242, 243, 82, 245, 79, 247, 86, 238, 88, 236, 90, 108, 218, 106, 220, 104, 96, 223, 101, 226, 225, 98, 228, 103, 221, 105, 219, 107, 217, 199, 125, 201, 123, 203, 121, 115, 206, 207, 118, 209, 120, 204, 122, 202, 124, 200, 126, 144, 182, 142, 184, 140, 186, 138, 134, 189, 190, 137, 187, 139, 185, 141, 183, 143, 181, 162, 179, 160, 177, 158, 175, 156, 155, 172, 171, 170, 151, 168, 149, 166, 147, 164, 145, 163, 161, 165, 159, 167, 157, 169, 173, 154, 153, 152, 174, 150, 176, 148, 178, 146, 180, 198, 128, 196, 130, 194, 132, 192, 188, 136, 135, 191, 133, 193, 131, 195, 129, 197, 127, 109, 215, 111, 213, 113, 211, 205, 119, 117, 208, 116, 210, 114, 212, 112, 214, 110, 216, 234, 92, 232, 94, 230, 222, 102, 224, 100, 99, 227, 97, 229, 95, 231, 93, 233, 91, 73, 251, 75, 249, 239, 85, 241, 83, 81, 244, 80, 246, 78, 248, 76, 250, 74, 252, 270, 56, 268, 256, 68, 258, 66, 260, 64, 63, 263, 61, 265, 59, 267, 57, 269, 55, 37, 287, 273, 51, 275, 49, 277, 47, 45, 280, 44, 282, 42, 284, 40, 286, 38, 288, 306, 290, 34, 292, 32, 294, 30, 296, 28, 27, 299, 25, 301, 23, 303, 21, 305, 19, 307, 17, 309, 15, 311, 13, 313, 11, 9, 316, 8, 318, 6, 320, 4, 322, 2, 324 },
	{ 190, 169, 148, 127, 106, 85, 64, 43, 22, 1, 360, 339, 318, 297, 276, 255, 234, 213, 192, 191, 189, 168, 147, 126, 105, 84, 63, 42, 21, 19, 359, 338, 317, 296, 275, 254, 233, 212, 211, 209, 188, 167, 146, 125, 104, 83, 62, 41, 20, 18, 358, 337, 316, 295, 274, 253, 232, 231, 210, 208, 187, 166, 145, 124, 103, 82, 61, 40, 38, 17, 357, 336, 315, 294, 273, 252, 251, 230, 228, 207, 186, 165, 144, 123, 102, 81, 60, 39, 37, 16, 356, 335, 314, 293, 272, 271, 250, 229, 227, 206, 185, 164, 143, 122, 101, 80, 59, 57, 36, 15, 355, 334, 313, 292, 291, 270, 249, 247, 226, 205, 184, 163, 142, 121, 100, 79, 58, 56, 35, 14, 354, 333, 312, 311, 290, 269, 248, 246, 225, 204, 183, 162, 141, 120, 99, 78, 76, 55, 34, 13, 353, 332, 331, 310, 289, 268, 266, 245, 224, 203, 182, 161, 140, 119, 98, 77, 75, 54, 33, 12, 352, 351, 330, 309, 288, 267, 265, 244, 223, 202, 181, 160, 139, 118, 97, 95, 74, 53, 32, 11, 10, 350, 329, 308, 287, 285, 264, 243, 222, 201, 180, 159, 138, 117, 96, 94, 73, 52, 31, 30, 9, 349, 328, 307, 286, 284, 263, 242, 221, 200, 179, 158, 137, 116, 114, 93, 72, 51, 50, 29, 8, 348, 327, 306, 304, 283, 262, 241, 220, 199, 178, 157, 136, 115, 113, 92, 71, 70, 49, 28, 7, 347, 326, 305, 303, 282, 261, 240, 219, 198, 177, 156, 135, 133, 112, 91, 90, 69, 48, 27, 6, 346, 325, 323, 302, 281, 260, 239, 218, 197, 176, 155, 134, 132, 111, 110, 89, 68, 47, 26, 5, 345, 324, 322, 301, 280, 259, 238, 217, 196, 175, 154, 152, 131, 130, 109, 88, 67, 46, 25, 4, 344, 342, 321, 300, 279, 258, 237, 216, 195, 174, 153, 151, 150, 129, 108, 87, 66, 45, 24, 3, 343, 341, 320, 299, 278, 257, 236, 215, 194, 173, 171, 170, 149, 128, 107, 86, 65, 44, 23, 2, 361, 340, 319, 298, 277, 256, 235, 214, 193, 172 },
	{ 1, 399, 398, 4, 5, 395, 394, 8, 9, 391, 390, 12, 13, 387, 386, 16, 17, 383, 382, 20, 380, 22, 23, 377, 376, 26, 27, 373, 372, 30, 31, 369, 368, 34, 35, 365, 364, 38, 39, 361, 360, 42, 43, 357, 356, 46, 47, 353, 352, 50, 51, 349, 348, 54, 55, 345, 344, 58, 59, 341, 61, 339, 338, 64, 65, 335, 334, 68, 69, 331, 330, 72, 73, 327, 326, 76, 77, 323, 322, 80, 81, 319, 318, 84, 85, 315, 314, 88, 89, 311, 310, 92, 93, 307, 306, 96, 97, 303, 302, 100, 300, 102, 103, 297, 296, 106, 107, 293, 292, 110, 111, 289, 288, 114, 115, 285, 284, 118, 119, 281, 280, 122, 123, 277, 276, 126, 127, 273, 272, 130, 131, 269, 268, 134, 135, 265, 264, 138, 139, 261, 141, 259, 258, 144, 145, 255, 254, 148, 149, 251, 250, 152, 153, 247, 246, 156, 157, 243, 242, 160, 161, 239, 238, 164, 165, 235, 234, 168, 169, 231, 230, 172, 173, 227, 226, 176, 177, 223, 222, 180, 220, 182, 183, 217, 216, 186, 187, 213, 212, 190, 191, 209, 208, 194, 195, 205, 204, 198, 199, 201, 200, 202, 203, 197, 196, 206, 207, 193, 192, 210, 211, 189, 188, 214, 215, 185, 184, 218, 219, 181, 221, 179, 178, 224, 225, 175, 174, 228, 229, 171, 170, 232, 233, 167, 166, 236, 237, 163, 162, 240, 241, 159, 158, 244, 245, 155, 154, 248, 249, 151, 150, 252, 253, 147, 146, 256, 257, 143, 142, 260, 140, 262, 263, 137, 136, 266, 267, 133, 132, 270, 271, 129, 128, 274, 275, 125, 124, 278, 279, 121, 120, 282, 283, 117, 116, 286, 287, 113, 112, 290, 291, 109, 108, 294, 295, 105, 104, 298, 299, 101, 301, 99, 98, 304, 305, 95, 94, 308, 309, 91, 90, 312, 313, 87, 86, 316, 317, 83, 82, 320, 321, 79, 78, 324, 325, 75, 74, 328, 329, 71, 70, 332, 333, 67, 66, 336, 337, 63, 62, 340, 60, 342, 343, 57, 56, 346, 347, 53, 52, 350, 351, 49, 48, 354, 355, 45, 44, 358, 359, 41, 40, 362, 363, 37, 36, 366, 367, 33, 32, 370, 371, 29, 28, 374, 375, 25, 24, 378, 379, 21, 381, 19, 18, 384, 385, 15, 14, 388, 389, 11, 10, 392, 393, 7, 6, 396, 397, 3, 2, 400 },
	{},
	{},
	{},
	{}

};

int main(){
	int n;
	cin >> n;
	for (int i = 0; i < n; i++){
		for (int j = 0; j < n; j++){
			cout << num[n][i*n + j] << " ";
		}
		cout << endl;
	}
}
0