#include <iostream>
#include <string>
#include <stdio.h>
#include <vector>
#include <list>
#include <algorithm>
using namespace std;
void work(int c);
int main()
{
int n = 1;
//cin >> n;
for (int i = 1; i <= n; ++i)
work(i);
}
// n >= 2 && n <= 15
int ret = 1;
int n;
vector<bool> canBuy(16, true);
int matrix[16][16];
char table[1 << 16][10][16];
void trace(int i, int currPrice, int count,unsigned int i32u)
{
auto &r = table[i32u][currPrice][i];
if (r != -1)return;
i32u |= (1 << i);
for (int j = 0; j < n; ++j)
{
if (i == j || (i32u & (1 << j))) continue;//살 수 없거나 자기자신이거나.
if (matrix[i][j] < currPrice) continue; //지금 가격보다 저렴하게 사고 싶은 친구들은 건너뛰어야.
trace(j, matrix[i][j], count + 1, i32u);
r = max(int(r), count + 1);
}
ret = max(int(r), ret);
}
void work(int c)
{
for (int i = 0; i < (1 << 16); ++i)
for (int j = 0; j < 10; ++j)
for (int k = 0; k < 16; ++k)
table[i][j][k] = -1;
cin >> n;
char t;
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j)
{
cin >> t;
matrix[i][j] = t - '0';
}
//matrix를 먼저 받아야 뭐가 되겠지
trace(0, 0, 1,0u);
cout << ret << endl;
}
품
안드의노예 봐라
잡대컴공(stakeholder)
2016-02-05 20:25
추천 0
댓글 4
다른 게시글
-
C자료구조 질문하나만할게요 [7]ㄱㄱ(183.96) | 16.02.05추천 0
-
인텔리j vs 이클립스 [2]ㅁㅇ(211.222) | 16.02.05추천 0
-
대기업이나 큰 회사에서하는 학원은 좋아보이더라익명(121.140) | 16.02.05추천 0
-
언어, 툴로 싸우는 본질적인 이유 [2]익명(121.140) | 16.02.05추천 0
-
대학에선 인생스승 만날줄알았는데ㅇㅅㅇ(115.161) | 16.02.05추천 0
-
요즘 슬라이드 형식으로 자료 왜케 올림? [1]익명(121.140) | 16.02.05추천 0
-
SBS 아카데미에서 수강생 모집중~ 국비지원됨~ 실업자형들 재직자형들~ [5]SBS아카데..(121.66) | 16.02.05추천 1
-
애미뒤진 친목종자새퀴들땜에 갤 망했네익명(119.199) | 16.02.05추천 0
-
자바스크립트 어려운게 정상임? [1]익명(121.140) | 16.02.05추천 0
-
자바스크립트도 매겨변수로 오브젝트넘기면 [2]dd(183.107) | 16.02.05추천 0
memoization을 bit단위로 하는 것
ㅇㅇ 나도 비트마스크 생각해봤는데 머리가 안따라줘서 걍 포기함;;
하튼 ㄱㅅㄱㅅ
그건 그렇고 인덴트의 상태가...!?