Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function Test-Sum
- {
- param(
- [Parameter( Mandatory, Position = 0 )]
- [Int[]]
- $List,
- [Parameter( Mandatory, Position = 1 )]
- [Int]
- $Target
- )
- Write-Host "Checking List of $($List.count) numbers for a sum of $Target"
- $visited = @{}
- for ( $i = 0; $i -lt $List.count; $i++ )
- {
- $number = $List[$i]
- if ( $null -ne $visited[$Target - $number] )
- {
- Write-Output "$($Target - $number) + $number = $Target"
- return $true
- }
- $visited[$number] = $Target - $number
- }
- return $false
- }
- Test-Sum -List -10,2,3,4,20,35 25
- Test-Sum -List 0,2,3,4,20,25,35 25
- 2000,4000,8000,16000 | % {
- "in $((Measure-Command {Test-Sum @(1..$_) $_}).TotalMilliseconds) ms"
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement