Tasks Details
  
    
    
      
        
           
        
          
        
       
      
        
          
          
          
          
            
              
                
        
        
          
  
    
      
    
      
    
  
                        
 
                      
                        
  
  
  
                        
 
                      
                        
  
  
  
                        
  
    
    
      
        
          
        
        
    
      
      
          
          
        
          
            
              
              
            
             
              
                
                  
                  
              
             
           
        
      
        
          
          
        
          
            
              
              
            
             
              
                
                  
                  
              
             
           
        
      
       
    
  
          
            
          
        
       
    
   
 
                      
                        
  
  
  
    
      
    
      
        
          
            
              
              
            
            
              
                
              
              
          
        
      
    
  
                        
 
                      
                        
  
  
  
    
      
    
      
        
          
            
              
              
            
            
              
                
              
              
          
        
      
    
  
                        
  
    
    
      
        
          
        
        
    
      
      
          
            
              
              
            
             
              
                
                  
                  
              
             
           
        
      
        
        
          
            
              
              
            
             
              
                
                  
                  
              
             
           
        
      
       
    
  
          
            
          
        
       
    
   
 
                      
                        
  
  
  
    
      
    
      
        
          
            
              
              
            
            
              
                
              
              
          
        
      
    
  
                        
 
                      
                        
  
  
  
    
      
    
      
    
  
                        
  
    
    
      
        
          
        
        
    
       
    
  
          
            
          
        
       
    
   
 
                      
                        
  
  
  
    
      
    
      
    
  
                        
 
                      
                        
  
  
  
    
      
    
      
    
  
                        
  
    
    
      
        
          
        
        
    
       
    
  
          
            
          
        
       
    
   
 
                      
                        
  
  
  
    
      
    
      
    
  
                        
  
    
    
      
        
          
        
        
    
       
    
  
          
            
          
        
       
    
   
 
                      
                        
  
  
  
    
      
    
      
    
  
                        
  
    
    
      
        
          
            
        
    
  
  
  
    
       
    
      
      
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
       
    
      
      
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
        
        
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
          
            
              
              
            
             
              
             
           
        
      
       
    
  
          
            
          
        
       
    
   
 
                      
                    
                  
                
              
            
          
          
        
      
    
  
    
          easy
        
        
            1.
            
              Triangle
            
          
          
            Determine whether a triangle can be built from a given set of edges.
          
        
  
    
    Task Score
    
    
  
  
    
      
        
          
            
        
      
    
  
          
              100%
            
          
  
    
    Correctness
    
    
  
  
    
      
        
          
            
        
      
    
  
          
              100%
            
          
  
    
    Performance
    
    
  
  
    
      
        
          
            
        
      
    
  
        
              100%
            
          An array A consisting of N integers is given. A triplet (P, Q, R) is triangular if 0 ≤ P < Q < R < N and:
- A[P] + A[Q] > A[R],
 - A[Q] + A[R] > A[P],
 - A[R] + A[P] > A[Q].
 
For example, consider array A such that:
A[0] = 10 A[1] = 2 A[2] = 5 A[3] = 1 A[4] = 8 A[5] = 20Triplet (0, 2, 4) is triangular.
Write a function:
def solution(A)
that, given an array A consisting of N integers, returns 1 if there exists a triangular triplet for this array and returns 0 otherwise.
For example, given array A such that:
A[0] = 10 A[1] = 2 A[2] = 5 A[3] = 1 A[4] = 8 A[5] = 20the function should return 1, as explained above. Given array A such that:
A[0] = 10 A[1] = 50 A[2] = 5 A[3] = 1the function should return 0.
Write an efficient algorithm for the following assumptions:
- N is an integer within the range [0..100,000];
 - each element of array A is an integer within the range [−2,147,483,648..2,147,483,647].
 
Copyright 2009–2025 by Codility Limited. All Rights Reserved. Unauthorized copying, publication or disclosure prohibited.
              
            
          
            Solution
            
            
              
                
              
            
          
          
          
            
              Programming language used Python
            
          
          
            
            
              Time spent on task 95 minutes
              
            
            
          
          
          
            
              
                
                  Notes
                  
                    
                  
                
               
              
                
              
              
                
                  
                    
                  
                  
                  
                  
                  
                    
                  
                  
                    
                      
                        
  
  
                      
                        
                          not defined yet
                        
                      
                      
                    
                    
                  
        Code: 04:42:49 UTC,
        
          java,
        
        
          autosave 
        
      
      
      
      
    
          Analysis 
          
            
          
        
        
          
  
  
  
        
          expand all 
        
        Example tests
      
      
        
            example
            
              
example, positive answer, length=6
          
            example, positive answer, length=6
✘
 
          
          
            RUNTIME ERROR
            
              
                
tested program terminated with exit code 1
        tested program terminated with exit code 1
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  RUNTIME ERROR,
                  tested program terminated with exit code 1
                
                
              
            
                    
                      stderr:
                      
                Invalid result type, int expected, <class 'NoneType'> found.
            example1
            
              
example, answer is zero, length=4
          
            example, answer is zero, length=4
✘
 
          
          
            RUNTIME ERROR
            
              
                
tested program terminated with exit code 1
        tested program terminated with exit code 1
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  RUNTIME ERROR,
                  tested program terminated with exit code 1
                
                
              
            
                    
                      stderr:
                      
                Invalid result type, int expected, <class 'NoneType'> found.
        Code: 06:15:45 UTC,
        
          py,
        
        
          autosave 
        
      
      
      
      
    # you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")
def solution(A):
    # Implement your solution here
    print(A)
    A= sorted(A)
    print(A)
    for i in range(2,len(A)):
        if (A[i-2] + A[i-1]) > A[i]:
            return 1
        else:
            return 0 
        
solution([10, 2, 5, 1, 8, 20])
            
        Code: 06:15:46 UTC,
        
          py,
        
        
          verify,
          
            
              result: Failed
            
          
          
        
      
      
      
      
    # you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")
def solution(A):
    # Implement your solution here
    print(A)
    A= sorted(A)
    print(A)
    for i in range(2,len(A)):
        if (A[i-2] + A[i-1]) > A[i]:
            return 1
        else:
            return 0 
        
solution([10, 2, 5, 1, 8, 20])
            
          Analysis 
          
            
          
        
        
          
  
  
  
        
          expand all 
        
        Example tests
      
      
        
        
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  WRONG ANSWER,
                  got 0 expected 1
                
                
              
            
                    
                    
                      stdout:
                      
                [10, 2, 5, 1, 8, 20] [1, 2, 5, 8, 10, 20] [10, 2, 5, 1, 8, 20] [1, 2, 5, 8, 10, 20]
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                    
                    
                      stdout:
                      
                [10, 2, 5, 1, 8, 20] [1, 2, 5, 8, 10, 20] [10, 50, 5, 1] [1, 5, 10, 50]
        Code: 06:15:56 UTC,
        
          py,
        
        
          autosave 
        
      
      
      
      
    # you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")
def solution(A):
    # Implement your solution here
    print(A)
    A= sorted(A)
    #print(A)
    for i in range(2,len(A)):
        if (A[i-2] + A[i-1]) > A[i]:
            return 1
        else:
            return 0 
        
solution([10, 2, 5, 1, 8, 20])
            
        Code: 06:16:01 UTC,
        
          py,
        
        
          verify,
          
            
              result: Failed
            
          
          
        
      
      
      
      
    
          Analysis 
          
            
          
        
        
          
  
  
  
        Code: 06:16:30 UTC,
        
          py,
        
        
          autosave 
        
      
      
      
      
    
        Code: 06:16:38 UTC,
        
          py,
        
        
          verify,
          
            
              result: Passed
            
          
          
        
      
      
      
      
    
          Analysis 
          
            
          
        
        
          
  
  
  
        Code: 06:16:44 UTC,
        
          py,
        
        
          verify,
          
            
              result: Passed
            
          
          
        
      
      
      
      
    
          Analysis 
          
            
          
        
        
          
  
  
  
        Code: 06:16:47 UTC,
        
          py,
        
        
          final,
          
            score: 
              
                100
              
              
          
          
        
      
      
      
      
    Analysis summary
            
  The solution obtained perfect score.
          Analysis 
          
            
          
        
        
          
  
    
      Detected time complexity:
        
          O(N*log(N))
        
        
      
        
          expand all 
        
        Correctness tests
      
      
        
        
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
        
          expand all 
        
        Performance tests
      
      
        
        
                1.
              
              
              
                
                  0.016 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.028 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.060 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.076 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.068 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                1.
              
              
              
                
                  0.056 s
                
              
              
              
                
                  OK
                
                
              
            
                2.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                3.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                4.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                5.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK
                
                
              
            
                6.
              
              
              
                
                  0.012 s
                
              
              
              
                
                  OK