Submission #9492

#TimeUsernameProblemLanguageResultExecution timeMemory
9492eternalklausUniting (kriii2_U)C++98
0 / 4
0 ms1476 KiB
#include <stdio.h> int arr[100000]; int main() { int n,i,j,index; int tmp; int ttmp; int sum=0; long long nu=1; scanf("%d",&n); for(i=0;i<n;i++) { index=0; scanf("%d",&tmp); while(tmp>arr[index]&&index<i) index++; //index++자리에 인서트. for(j=i-1;j>=index;j--) arr[j+1]=arr[j]; arr[index]=tmp; } for(i=0;i<n-1;i++) { sum+=arr[i]*arr[i+1]; if(arr[i]!=arr[i+1]) nu=nu*2; index=i+2; //주제는 i+1이야. 그러니 i+2에서부터 비교해야지. arr[i+1]=arr[i]+arr[i+1]; ttmp=arr[i+1]; //i+1에서 n까지 쏘팅!!! while(ttmp>arr[index]) index++; //index 이 자리에 넣는거야 나머지는 앞으로 한칸씩 땡기고 for(j=i+2;j<index;j++) { arr[j-1]=arr[j]; } arr[index]=ttmp; } printf("%d",sum); //printf("%ld\n",nu%1000000007); }
#Verdict Execution timeMemoryGrader output
Fetching results...