hdu 1518 Square (심층 검색 + 가지치기)
9111 단어 HDU
제목 의 대의: 제목 이 준 몇 개의 변 에 따라 정사각형 을 구성 할 수 있 는 지 판단 하고 좋 은 심층 검색 응용 을 하 며 가 지 를 자 르 는 것 에 주의 하여 시간 을 초과 하지 않도록 합 니 다!
1 #include <iostream>
2 #include <cstdio>
3 #include<algorithm>
4 #include <cstring>
5 using namespace std;
6 int ap[30],visit[30];
7 int l,n;
8 int dfs(int len,int gen,int iqq)
9 {
10 if (gen==3)
11 return 1;
12 for(int i=iqq; i<n; i++)
13 {
14 //cout<<visit[len]<<endl;
15 if (!visit[i])
16 {
17 visit[i]=1;
18 if (len+ap[i]==l)
19 {
20 //cout<<len<<endl;
21 if(dfs(0,gen+1,0))
22 return 1;
23 }
24 else if (len+ap[i]<l)
25 {
26 //cout<<len<<endl;
27 if(dfs(len+ap[i],gen,i)) return 1;
28 }
29 visit[i]=0;
30 }
31 }
32 return 0;
33 }
34 int main ()
35 {
36 int t,sum;
37 while (cin>>t)
38 {
39 while (t--)
40 {
41 cin>>n;
42 sum=0;
43 //Max=0;
44 for (int i=0; i<n; i++)
45 {
46 cin>>ap[i];
47 sum+=ap[i];
48 }
49 memset(visit,0,sizeof(visit));
50 sort(ap,ap+n);
51 if (sum%4==0&&n>=4&&ap[n-1]<=sum/4)
52 {
53
54 l=sum/4;
55 if (dfs(0,0,0))
56 printf ("yes
");
57 else
58 printf ("no
");
59 //cout<<n<<endl;
60 }
61 else printf ("no
");
62 }
63 }
64 }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
hdu4671(다교리그 7--수 시뮬레이션)클릭하여 링크 열기 제목: n과 서버, m개의 데이터베이스가 있고 모든 데이터베이스는 서버를 연결해야 하지만 모든 데이터베이스는 서버를 연결하는 우선순위가 있습니다.모든 데이터베이스의 서버 우선순위를 구하다.또한 한...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.