1. 程式人生 > >bzoj1643 / P2666 [Usaco2007 Oct]Bessie's Secret Pasture 貝茜的秘密草坪

bzoj1643 / P2666 [Usaco2007 Oct]Bessie's Secret Pasture 貝茜的秘密草坪

style sin eve oct pre string ans 完全 tdi

[Usaco2007 Oct]Bessie‘s Secret Pasture 貝茜的秘密草坪

簡單的dfs題

枚舉前3個完全平方數,判斷最後一個是不是完全平方數,統計合法方案數即可。

(zz選手竟把數據看成<=1e9)

技術分享圖片
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<cmath>
 5 using namespace std;
 6 int n,ans;
 7 void dfs(int t,int d){
 8     if
(d==4){ 9 int k=sqrt(t); 10 if(k*k==t) ++ans; 11 return ; 12 } 13 for(int i=0;i*i<=t;++i) 14 dfs(t-i*i,d+1); 15 } 16 int main(){ 17 scanf("%d",&n); 18 dfs(n,1); 19 printf("%d",ans); 20 return 0; 21 }
View Code

bzoj1643 / P2666 [Usaco2007 Oct]Bessie's Secret Pasture 貝茜的秘密草坪