結果
| 問題 |
No.1284 Flip Game
|
| コンテスト | |
| ユーザー |
tails
|
| 提出日時 | 2020-11-10 11:32:05 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 5 ms / 2,000 ms |
| コード長 | 773 bytes |
| コンパイル時間 | 552 ms |
| コンパイル使用メモリ | 34,324 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-22 17:22:49 |
| 合計ジャッジ時間 | 1,775 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 28 |
コンパイルメッセージ
main.c:9:1: warning: return type defaults to 'int' [-Wimplicit-int]
9 | main(){
| ^~~~
main.c: In function 'main':
main.c:11:9: warning: implicit declaration of function 'read' [-Wimplicit-function-declaration]
11 | read(0,rbuf,sizeof rbuf);
| ^~~~
main.c:51:17: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
51 | printf("%d",v);
| ^~~~~~
main.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf'
+++ |+#include <stdio.h>
1 | #pragma GCC optimize("Ofast")
main.c:51:17: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
51 | printf("%d",v);
| ^~~~~~
main.c:51:17: note: include '<stdio.h>' or provide a declaration of 'printf'
ソースコード
#pragma GCC optimize("Ofast")
#pragma GCC target("avx2")
#define RD(v) int v=0;{int _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;}
int c[9][9];
int d[1<<18][9];
main(){
char rbuf[1024];
read(0,rbuf,sizeof rbuf);
char*rp=rbuf;
RD(n);
for(int y=0;y<n;++y){
for(int x=0;x<n;++x){
RD(t);
c[y][x]=t;
}
}
// morau-dp
for(int m=0;m<1<<n+n;){
for(int i=0;i<n;++i){
int v=2e9;
if(m&3<<i+i){
for(int j=0;j<n;++j){
if(j!=i){
int w=d[m-(1<<i+i)][j]+c[i][j];
v=v>w?w:v;
}
}
if(m==1<<i+i|m==2<<i+i){
v=0;
}
}
d[m][i]=v;
}
m+=1;
int t;
while(t=m&m>>1&0x15555){
m+=t;
}
}
{
int m=(1<<n+n)-1&0x2aaaa;
int v=2e9;
for(int i=0;i<n;++i){
if(v>d[m][i]){
v=d[m][i];
}
}
printf("%d",v);
}
}
tails