Skip to content

Latest commit

 

History

History
153 lines (152 loc) · 4.54 KB

112.md

File metadata and controls

153 lines (152 loc) · 4.54 KB

Results of GPT-4 on HumanEval/112

Date: 18 July, 2023
Model: gpt-4
Temperature: 0.2
Passing runs: 10
Total runs: 10
Success rate: 100%

Prompt

Tokens: 188

def reverse_delete(s,c):
    """Task
    We are given two strings s and c, you have to deleted all the characters in s that are equal to any character in c
    then check if the result string is palindrome.
    A string is called palindrome if it reads the same backward as forward.
    You should return a tuple containing the result string and True/False for the check.
    Example
    For s = "abcde", c = "ae", the result should be ('bcd',False)
    For s = "abcdef", c = "b"  the result should be ('acdef',False)
    For s = "abcdedcba", c = "ab", the result should be ('cdedc',True)
    """

The above is an incomplete Python code fragment. Return the complete and correct code with no additional text.

Correct solution

def reverse_delete(s,c):
    """Task
    We are given two strings s and c, you have to deleted all the characters in s that are equal to any character in c
    then check if the result string is palindrome.
    A string is called palindrome if it reads the same backward as forward.
    You should return a tuple containing the result string and True/False for the check.
    Example
    For s = "abcde", c = "ae", the result should be ('bcd',False)
    For s = "abcdef", c = "b"  the result should be ('acdef',False)
    For s = "abcdedcba", c = "ab", the result should be ('cdedc',True)
    """s = ''.join([char for char in s if char not in c])
    return (s,s[::-1] == s)

Unit tests

def check(candidate):

    assert candidate("abcde","ae") == ('bcd',False)
    assert candidate("abcdef", "b") == ('acdef',False)
    assert candidate("abcdedcba","ab") == ('cdedc',True)
    assert candidate("dwik","w") == ('dik',False)
    assert candidate("a","a") == ('',True)
    assert candidate("abcdedcba","") == ('abcdedcba',True)
    assert candidate("abcdedcba","v") == ('abcdedcba',True)
    assert candidate("vabba","v") == ('abba',True)
    assert candidate("mamma", "mia") == ("", True)

Runs

✅ Run 1

Start time: 2023-07-18 18:08:03
Duration: 4.24s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 2

Start time: 2023-07-18 18:08:00
Duration: 3.03s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 3

Start time: 2023-07-18 18:07:57
Duration: 3.69s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 4

Start time: 2023-07-18 18:07:52
Duration: 4.3s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 5

Start time: 2023-07-18 18:07:49
Duration: 3.38s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 6

Start time: 2023-07-18 18:07:39
Duration: 9.99s
Completion tokens: 129
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 7

Start time: 2023-07-18 18:07:34
Duration: 4.39s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 8

Start time: 2023-07-18 18:07:29
Duration: 4.7s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 9

Start time: 2023-07-18 18:07:24
Duration: 5.05s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])

✅ Run 10

Start time: 2023-07-18 18:07:19
Duration: 4.76s
Completion tokens: 38
Result: Pass

def reverse_delete(s,c):
    result = ''.join([i for i in s if i not in c])
    return (result, result == result[::-1])