Advertisement
Guest User

kjhgfdcsx

a guest
Oct 16th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. ///yin-yang
  2. ///O(n*m*(n+m))
  3. #include<stdio.h>
  4. int n,m,a[1002][1002],i,j,k,x,nr,c1,c2;
  5.  
  6. int main(){
  7. FILE *fin,*fout;
  8. fin= fopen("yinyang.in","rt");
  9. fout=fopen("yinyang.out","wt");
  10. fscanf(fin,"%d %d\n",&n,&m);
  11. for(i=1;i<=n;i++){
  12. for(j=1;j<=m;j++){
  13. fscanf(fin,"%d ",&x);
  14. a[i][j]=x;
  15. }
  16. }
  17. nr=0;
  18. for(i=1;i<=n-1;i++){
  19. for(j=i+1;j<=n;j++){
  20. int r=0;c1=0;c2=0;
  21. for(k=1;k<=m;k++){
  22. if(a[i][k]<a[j][k]){
  23. if(r==0)r=-1;
  24. c1++;
  25. }
  26. if(a[i][k]>a[j][k]){
  27. if(r==0)r=+1;
  28. c2++;
  29. }
  30. }
  31. if(c1 && c2){fprintf(fout,"-1");fclose(fout);fclose(fin);return 0;}
  32. if(r>0)nr++;
  33. }
  34. }
  35.  
  36. for(i=1;i<=m-1;i++){
  37. for(j=i+1;j<=m;j++){
  38. int r=0;c1=0;c2=0;
  39. for(k=1;k<=n;k++){
  40. if(a[k][i]<a[k][j]){
  41. if(r==0)r=-1;
  42. c1++;
  43. }
  44. if(a[k][i]>a[k][j]){
  45. if(r==0)r=+1;
  46. c2++;
  47. }
  48. }
  49. if(c1 && c2){fprintf(fout,"-1");fclose(fout);fclose(fin);return 0;}
  50. if(r>0)nr++;
  51. }
  52. }
  53.  
  54. fprintf(fout,"%d",nr);
  55. fclose(fout); fclose(fin);
  56. return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement