#include <iostream> #include <cstdio> #include <algorithm> using namespace std; /*void printA(){ for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(A[i][j]<1000000){ printf("%d ",A[i][j]); }else{ printf("Z "); } } cout<<endl; } cout<<"-------------------------------------------"<<endl; }*/ int main(){ //int** A;//[200][200]; int* B;//[4000000]; int n; scanf("%d",&n); // for(int i=0;i<200;i++)for(int j=0;j<n;j++)A[i][j]=1000000005; B = new int[n*n]; //A=new int*[n]; //for(int i=0;i<n;i++)A[i]=new int[n]; int x=0; for(int i=0;i<n;i++){ for(int j=0;j<n-i;j++){ //scanf("%d",&A[i][j+i]); scanf("%d",&B[x]);x++; } } //printA(); /*for(int h=0;h<n;h++){ for(int i=0;i<n;i++){ for(int j=i;j<n;j++){ for(int k=0;k<n;k++){ if(j<n-1 && A[i][k]+A[j+1][k]<A[i][j]) A[i][j]=A[i][k]+A[j+1][k]; } for(int k=0;k<n;k++){ if(i>=1 && A[k][j]+A[k][i-1]<A[i][j]) A[i][j]=A[k][j]+A[k][i-1]; } for(int k=0;k<n;k++){ if(k<n-1 && A[i][k]+A[k+1][j]<A[i][j]) A[i][j]=A[i][k]+A[k+1][j]; } } } }*/ //printA(); //int x=0; //for(int i=0;i<n;i++){ // for(int j=i;j<n;j++){ // B[x]=A[i][j];x++; // } //} //for(int i=0;i<x;i++)cout<<B[i]<<" "; //cout<<endl<<"#############"<<endl; sort(B,B+x); //for(int i=0;i<x;i++)cout<<B[i]<<" "; int sum = 0; for(int i=0;i<n;i++){ sum = sum+B[i]; } printf("%d\n",sum); //cin>>n; return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | #include <iostream> #include <cstdio> #include <algorithm> using namespace std; /*void printA(){ for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(A[i][j]<1000000){ printf("%d ",A[i][j]); }else{ printf("Z "); } } cout<<endl; } cout<<"-------------------------------------------"<<endl; }*/ int main(){ //int** A;//[200][200]; int* B;//[4000000]; int n; scanf("%d",&n); // for(int i=0;i<200;i++)for(int j=0;j<n;j++)A[i][j]=1000000005; B = new int[n*n]; //A=new int*[n]; //for(int i=0;i<n;i++)A[i]=new int[n]; int x=0; for(int i=0;i<n;i++){ for(int j=0;j<n-i;j++){ //scanf("%d",&A[i][j+i]); scanf("%d",&B[x]);x++; } } //printA(); /*for(int h=0;h<n;h++){ for(int i=0;i<n;i++){ for(int j=i;j<n;j++){ for(int k=0;k<n;k++){ if(j<n-1 && A[i][k]+A[j+1][k]<A[i][j]) A[i][j]=A[i][k]+A[j+1][k]; } for(int k=0;k<n;k++){ if(i>=1 && A[k][j]+A[k][i-1]<A[i][j]) A[i][j]=A[k][j]+A[k][i-1]; } for(int k=0;k<n;k++){ if(k<n-1 && A[i][k]+A[k+1][j]<A[i][j]) A[i][j]=A[i][k]+A[k+1][j]; } } } }*/ //printA(); //int x=0; //for(int i=0;i<n;i++){ // for(int j=i;j<n;j++){ // B[x]=A[i][j];x++; // } //} //for(int i=0;i<x;i++)cout<<B[i]<<" "; //cout<<endl<<"#############"<<endl; sort(B,B+x); //for(int i=0;i<x;i++)cout<<B[i]<<" "; int sum = 0; for(int i=0;i<n;i++){ sum = sum+B[i]; } printf("%d\n",sum); //cin>>n; return 0; } |