結果
| 問題 |
No.1360 [Zelkova 4th Tune] 協和音
|
| コンテスト | |
| ユーザー |
pengin_2000
|
| 提出日時 | 2021-07-15 15:30:55 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 109 ms / 2,000 ms |
| コード長 | 866 bytes |
| コンパイル時間 | 135 ms |
| コンパイル使用メモリ | 30,720 KB |
| 実行使用メモリ | 6,948 KB |
| 最終ジャッジ日時 | 2024-07-04 15:42:18 |
| 合計ジャッジ時間 | 5,071 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 47 |
ソースコード
#include<stdio.h>
int main()
{
int n;
scanf("%d", &n);
int i, j, k;
long long int a[22];
for (i = 0; i < n; i++)
scanf("%lld", &a[i]);
long long int b[22][22];
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
scanf("%lld", &b[i][j]);
long long int ans_w = a[0], ans_k = 1;
long long int max = 1, w;
for (i = 0; i < n; i++)
max *= 2;
int v[22];
for (k = 1; k < max; k++)
{
for (i = 0, j = k; i < n; i++, j /= 2)
v[i] = j % 2;
w = 0;
for (i = 0; i < n; i++)
if (v[i] > 0)
w += a[i];
for (i = 0; i < n; i++)
for (j = i; j < n; j++)
if (v[i] * v[j] > 0)
w += b[i][j];
if (w > ans_w)
{
ans_w = w;
ans_k = k;
}
}
printf("%lld\n", ans_w);
for (i = 0; i < n; i++, ans_k /= 2)
{
if (ans_k % 2 > 0)
{
printf("%d", i + 1);
if (ans_k > 1)
printf(" ");
else
printf("\n");
}
}
return 0;
}
pengin_2000