This is a companion discussion topic for the original entry at https://toph.co/p/chief-thief

This is a companion discussion topic for the original entry at https://toph.co/p/chief-thief

#include iostream

#include cstdlib

using namespace std;

int index;

int main()

{

long long n, *ara, *result;

long long sum=1;

cin>>n;

if(n==1) {

cin>>n;

cout<<n<<endl;

return 0;

}

ara = (long long *)malloc(sizeof(long long)*n);

result = (long long *)malloc(sizeof(long long)*n);

for(int i=0; i<n; i++) {

cin>>ara[i];

}

for(int i=0; i<n; i++) {

for(int j=0; j<n; j++) {

if(ara[i]==ara[j]) continue;

else sum=sum * ara[j];

}

result[index++] = sum;

sum=1;

}

for(int k=0; k<index; k++) {

if(k==0) cout<<result[k];

else cout<<" "<<result[k];

}

cout<<endl;

free(ara);

free(result);

return 0;

}

What’s the problem with this code?

I used 2 different codes, but both of the time, CLE error took place. Anyone to help?

```
def prod(list):
p = 1
for j in list:
p *= j
return p
n=int(input())
k=[]
m=list(map(int, input().split()))
for i in range(n):
b=m[:i]+m[(i+1):]
k.append(prod(b))
print(*k)
```

and,

```
n=int(input())
p=[]
m=list(map(int, input().split()))
for i in range(n):
b=m[:i]+m[(i+1):]
l=1
for j in b:
l*=j
p.append(l)
print(*p)
```

@rased_299, I see that you were able to solve the problem. So, I am skipping your question.

@Rafeed, You are getting **CLE** because your code is not efficient. Try to figure out a more efficient approach to solve the problem.

And again, Both of your codes has the same logical approach. So, it does not count.

```
#include<bits/stdc++.h>
using namespace std;
int main()
{
long int t;
cin>>t;
long int a[t];
vector<int>s;
for(int i=0;i<t;i++)
{
cin>>a[i];
}
for(int i=0;i<t;i++)
{
long int sum=1;
for(int j=0;j<t;j++)
{
if(a[i]==a[j])
sum=sum+0;
else
sum=sum*a[j];
}
cout<<sum;
if(i<t-1)
cout<<" ";
}
return 0;
}
```

Showing wrong answer for the 4th test case…whats wrong?

def mulpti():

temp5 = b * c * d

temp6 = a * c * d

temp7 = a * b * d

temp8 = a * b * c

def somthing():

if temp5 <= 2 ** 31 and temp6 <= 2 ** 31 and temp7 <= 2 ** 31 and temp8 <= 2 ** 31:

print(temp5, temp6, temp7, temp8)

somthing()

d = int(input())

a, b, c, d = map(int, input().split())

if a <= 10**5 and b <= 10**5 and c <= 10**5 and d <= 10**5:

mulpti()

showing # Test case 5 error

why?

```
input();l=list(map(int,input().split()));p=1
for j in l:p*=j
print(" ".join([str(p//i) for i in l]))
```

This code’s getting RE at testcase #3. Any suggestions?

Run time for python should be increased 2x.

@jahir.raihan Python 2 and 3.7 are `2x`

already. Though Python 3.8 is still at `1x`

.

@hjr265 bhaiya, please increase the limit.