http://poj.org/problem?id=2861 #include <stdio.h> #include <memory.h> bool e[120][120]; int s[120][120]; int n; void input( ) { int i, j, k; char c[2]; scanf( "%d", &n ); for( i=0; i<n; i++ ) { for( j=0; j<n; j++ ) { scanf( "%1s", c ); e[i][j] = ( i!=j && c[0] == '1' ); } } for( i=0; i<n; i++ ) for( j=i+1; j<n; j++ ) { s[i][j] = 0; for( k=0; k<n; k++ ) if( e[i][k] && e[j][k] ) s[i][j]++; s[j][i] = s[i][j]; } } void doit( ) { int i, j, k; int ans = 0, sum, t, tt; for( i=0; i<n; i++ ) for( j=i+1; j<n; j++ ) { sum = 0; for( k=0; k<n; k++ ) { if( e[i][k] && k!=j ) { t = s[k][j]; if( e[i][j] ) t; ans += sum * t % (9901*3); sum += t; } } for( k=0; k<n; k++ ) if( e[k][j] && k!=i ) { t = s[k][i]; if( e[i][j] ) t; ans = t*(t1)/2; } for( k=0; k<n; k++ ) if( e[i][k] && e[j][k] ) { t = s[k][i]; tt = s[k][j]; if( e[i][j] ) t, tt; ans = t*tt; } ans %= (9901*3); } for( i=0; i<n; i++ ) for( j=i+1; j<n; j++ ) if( e[i][j] ) { ans += s[i][j]*(s[i][j]1)/2; } ans %= (9901*3); if( ans < 0 ) ans += (9901*3); printf( "%dn", ans/3 ); } int main( ){ input( ); doit( ); return 0; }
Meta

Recent Posts
Recent Comments
Archives
 May 2024
 April 2023
 February 2023
 January 2023
 December 2022
 November 2022
 September 2022
 June 2022
 July 2021
 January 2021
 February 2020
 September 2019
 March 2018
 February 2018
 August 2016
 July 2016
 June 2016
 May 2016
 April 2016
 March 2016
 February 2016
 January 2016
 December 2015
 November 2015
 October 2015
 September 2015
 August 2015
 July 2015
 June 2015
 May 2015
 April 2015
 March 2015
 February 2015
 January 2015
 December 2014
 November 2014
 October 2014
 September 2014
 August 2014
 July 2014
 June 2014
 May 2014
 April 2014
 March 2014
 February 2014
 January 2014
 December 2013
 November 2013
 October 2013
 September 2013
 August 2013
 July 2013
 June 2013
 May 2013
 April 2013
 March 2013
 February 2013
 January 2013
 December 2012
 November 2012
 October 2012
 September 2012
 August 2012
 July 2012
 June 2012
 May 2012
 April 2012
 March 2012
 February 2012
 January 2012
 December 2011
 November 2011
 October 2011
 September 2011
 August 2011
 July 2011
 June 2011
 May 2011
 April 2011
 March 2011
 February 2011
 January 2011
 December 2010
 November 2010
 October 2010
 September 2010
 August 2010
 July 2010
 June 2010
 May 2010
 April 2010
 March 2010
 February 2010
 January 2010
 December 2009
 November 2009
 October 2009
 September 2009
 August 2009
 July 2009
 June 2009
 May 2009
 April 2009
 March 2009
 February 2009
Categories