結果
| 問題 |
No.1398 調和の魔法陣 (構築)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2021-02-19 22:15:55 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,427 bytes |
| コンパイル時間 | 932 ms |
| コンパイル使用メモリ | 82,184 KB |
| 実行使用メモリ | 6,948 KB |
| 最終ジャッジ日時 | 2024-09-16 19:51:36 |
| 合計ジャッジ時間 | 26,937 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 1 |
| other | AC * 4 WA * 24 |
ソースコード
#include <iostream>
#include <stdio.h>
#include <vector>
#include <map>
#include <utility>
#include <list>
#include <algorithm>
#include <bitset>
typedef long long ll;
const ll INF=20000;
using namespace std;
ll dx[]={-1,0,-1};
ll dy[]={-1,-1,0};
int main(){
ll h,w;
cin>>w>>h;
ll x;
cin>>x;
// vector<vector<ll>> ans(h,vector<ll>(w,0));
for(ll z=1;z<=9;z++){
vector<vector<ll>> ans(h,vector<ll>(w,0));
ans[0][0]=z;
for(ll i=0;i<h;i++)
{
for(ll j=0;j<w;j++)
{
ll ansb=0;
for(ll k=0;k<3;k++)
{
ll x=i+dx[k];
ll y=j+dy[k];
if(i==0&&j==0)break;
if(0<=x&&0<=y&&x<=h-1&&y<=w-1)ansb+=ans[x][y];
}
if(i==0&&j==0)break;
if(ansb==x)
{
// ans[i][j]=0;
for(ll i=0;i<h;i++)
{
for(ll j=0;j<w;j++)
{
cout<<ans[i][j];
}
cout<<endl;
}
return 0;
}
ans[i][j]=ansb;
}
}
}
cout<<"-1"<<endl;
return 0;
}