------
## 最终结论
```python
def can_win_2048(queries):
    results = []
    for query in queries:
        n, elements = query
        
        # Check if we already have 2048
        if 2048 in elements:
            results.append("YES")
            continue
        
        # Remove elements greater than 2048
        elements = [x for x in elements if x <= 2048]
        
        # Combine elements while possible
        while True:
            combined = False
            for i in range(len(elements) - 1, 0, -1):
                if elements[i] == elements[i - 1]:
                    combined_value = elements[i] + elements[i - 1]
                    elements.pop(i)
                    elements.pop(i - 1)
                    elements.append(combined_value)
                    combined = True
                    break
            
            if not combined:
                break
        
        # Check again if we can achieve 2048 after combining
        if 2048 in elements:
            results.append("YES")
        else:
            total_sum = sum(x for x in elements if x < 2048)
            if total_sum >= 2048:
                results.append("YES")
            else:
                results.append("NO")
    
    return results

# Example usage
q = 6
queries = [
    (4, [1024, 512, 64, 512]),
    (1, [2048]),
    (3, [64, 512, 2]),
    (2, [4096, 4]),
    (7, [2048, 2, 2048, 2048, 2048, 2048, 2048]),
    (2, [2048, 4096])
]

results = can_win_2048(queries)
for result in results:
    print(result)
```