dynamic-programming,pseudocode,recurrence

The +1 is because you need one extra coin. So for example, if you have: Vj = 5 Min[17] = 4 And you want to know the number of coins it will take to get 22, then the answer isn't 4, but 5. It takes 4 coins to get to...

When you do this let b = a % b you are creating another readonly variable b, which has nothing to do with the variable b from the outside scope. You need to remove both lets inside the loop, and make parameters modifiable by declaring them with var, like this:...

c#,performance,dictionary,lookup,pseudocode

I think principal problem is you iterate over whole dictionary in every single iteration - this is O(N^2). Better build hashset based on your modified key (either from dictionary or from array) and iterate over the second. This is O(N). // some values var dictionary = new Dictionary<string, string>(); var...

javascript,canvas,pseudocode,fractals,mandelbrot

Complex number have a two part: real, imaginary. So z = a + b*i, where a is real part, and b*i is imaginary. In provided sample for z=z^2+c, where z=z_r+z_i*i NOTE: i*i = -1 So z^2 = (z_r+z_i*i)*(z_r+z_i*i) = z_r*z_r+2*z_r*z_i*i + z_i*i*z_i*i = z_r*z_r+2*z_r*z_i*i - z_i*z_i now add c: z_r*z_r+2*z_r*z_i*i...

navigation,gps,pseudocode,kalman-filter

The kalman-filter is an algorithm based off previous data. It is easy to implement when you have predictable motion (for example a swinging pendulum). However for general purpose use can be difficult to implement correctly. I have found it easier (and in some cases more reliable) to implement the simpler...

What about this? m <- matrix(c(2,3,4,1), ncol = 2, byrow = T) apply(expand.grid(m[,2],m[,1]),1,sum) [1] 5 3 7 5 ...

python,logic,pseudocode,mathematical-expressions

It usually means store the value 0 on the variable p In python it would be p = 0...

binary-search-tree,pseudocode,breadth-first-search

The code you posted is pseudo code, and is not intended to be valid C++. In C++, the assignment operator is =. In other languages such as Ada, BCPL, Cecil, Dylan, E, Eiffel, Maple, Mathematica, Modula-3, Pascal, Pliant, Sather, Simula, Smalltalk, SML, the assignment operator is :=. GNU make also...

You can solve this with a combination of ?rle and ?tapply. rle counts the number of consecutive elements and stores them in lengths and the corresponding values in values. tapply is used to calculate the groupwise mean: r <- rle(a$x) tapply(r$lengths, INDEX=r$values, FUN=mean) # 1 2 # 3.5 3.5 ...

Some type of recursion would be simple enough: def match(pattern, str): return match_(pattern, str) def match_(pattern, str) if len(pattern) == 0 and len(str) == 0: return True switch pattern[0]: case '?': match_(pattern[1: ], str[1: ]) case '*': return match_(pattern, str[1: ]) or match_(pattern[1: ], str[1: ]) or match_(pattern[1: ], str)...

c,algorithm,dynamic-programming,pseudocode,knapsack-problem

Knapsack problem can be solved using O(W) space. At each step of the iteration you need only 2 rows - current state of the array m[i] and m[i + 1]. current = 1 int m[2][W] set NONE for all elements of m # that means we are not able to...

c,linux,algorithm,timer,pseudocode

It seems way easier to just find out the current system time, and compute the countdown timer's value backwards from that. For instance, say you you want to count down to 2021-05-09. The value of the timer is then always going to be the difference between that time and the...

algorithm,sorting,pseudocode,topological-sort

Recall the procedure of the topological sort, which is in short: result <- [] //empty list Find a node n which is a sink in the graph remove all edges connecting to n, and n from the graph result.addFirst(n) if there are nodes left, return to 2 If at any...

algorithm,time-complexity,pseudocode

Let's suppose that "to n" means "the last value is n-1" (it is not important in terms of time complexity - see the final explanation). Let's take f(X) = the time complexity to run X. The total amount of time is: 1 + 0 + 0 + // i=n f(X)...

If I felt the need to include these in pseudocode, I would probably use the word "SET" or "ASSIGN". For example: "SET cat5 equal to EMPTY LIST" "ASSIGN EMPTY LIST to cat5" Also, the variable names should be replaced with a better description of what they will eventually contain, rather...

function,parameters,pseudocode

Given the nature of two Function calls Function() and UseTrapezoidRule(), it's been confirmed that the term Float acts as the return type of the Function(). As you can see, Float: UseTrapezoidRule() returns total_area which is of type Float,so the notation which you asked about follows the same pattern. Float: UseTrapezoidRule(Float:...

I think it's important to think in terms of betting rounds, not the game as a whole. A poker hand is a sequence of betting rounds. At the start of each round, some cards are dealt, some player is chosen to act first, and then players are visited in order...

One option is using strripos() to check to see if the character is in position 0 of the string. $price = '$2.00'; if(strripos($price, '$') === 0 || strripos($price, '€') === 0) { // do stuff } else { // do other stuff } You can also use the strrpos() function...

Display "You and Adrian run into the town in search for the blood mage you start in the town square in the center of town, you can move up, down, left, or right. which way do you want to move" should be before while loop If direction == up...

Pseudocode is a more informal expression. It is language independent. You do not have to declare variables in pseudocode. You just have to get the message across in a good manner. For printf you can use print "message" Hi, you can check out the following links they will definitely help....

data-structures,pseudocode,circular-list

a sentinal node is a node that contains no real data - it's just there for the convenience of the implementation. Thus a list with 4 real elements might have one or more extra nodes, making a total of 5 or 6 nodes. Those extra nodes might be place holders...

The easiest way is to use the equivalent of ceiling(log base 3 of (points + 0.5)) in your language. The +0.5 here fixes possible floating point errors and allows to use 0 for points. For example in Python: import math def levels(points): return math.ceil(math.log(points + 0.5, 3)) In C/C++: #include...

actionscript-3,flash,pseudocode

You can't both allow and disallow the same thing at the same time, obviously. What you can do is validate the field on CHANGE and only mark it as valid or invalid (perhaps with some error styling) and on FOCUS_OUT you reset the text if it's not valid. Something like...

string,text,vbscript,pseudocode

You can easily use regular expressions in this case: Set objFSO = CreateObject("Scripting.FileSystemObject") Set file = objFSO.OpenTextFile("sample.txt" , ForReading) Const ForReading = 1 Dim re Set re = new regexp re.Pattern = """(\w+?[.]sql)""" re.IgnoreCase = True re.Global = True Dim line Do Until file.AtEndOfStream line = file.ReadLine For Each m...

algorithm,function,tree,procedure,pseudocode

Since it's pseudo-code, just about anything goes. However, I'd rather go for omitting "list": return (0, 0) return (vr + p->cost, 1) return (vl + p->cost, 0) There doesn't seem to be any real benefit to putting "list" there - the (..., ...) format pretty clearly indicates returning two values...

arrays,matlab,math,matrix,pseudocode

MATLAB indexes values column-wise, starting at position 1, not zero. Thus in a matrix: A = 1 2 3 4 5 6 7 8 9 10 11 12 A(:).' %// Straighten it out to column vector and transpose (to make it a row) ans = 1 5 9 2 6...

algorithm,graph-algorithm,pseudocode

The recursive version is given in Wikipedia as this: BronKerbosch1(R, P, X): if P and X are both empty: report R as a maximal clique for each vertex v in P: BronKerbosch1(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v)) P := P \ {v} X := X ⋃ {v}...

c++,bit-manipulation,pseudocode

You are using logical AND: MT[i] = ((1812433253*(MT[i-1]^(((MT[i-1]))>>30)))+i) && 0xffffffff; You want to use bitwise AND: MT[i] = ((1812433253*(MT[i-1]^(((MT[i-1]))>>30)))+i) & 0xffffffff; The first expression will give you either true (if the first value is nonzero) or false. The second expression will give you the lowest 32 bits of that value....

Here is a guess as to what is required by the pseudo-code. It is not entirely clear what is required, and a look at the actual data being read and a sample of what is to be produced would be very helpful. Without sample input and output, it is difficult...

algorithm,graph,pseudocode,tarjans-algorithm

1) Your first question: It can easily been done in O(1) , just maintain a boolean array inStack, the moment node n is put in the stack, flag inStack[n] to true. When you pop it off the stack, flag it back to false. 2) Not much different between w.index and...

algorithm,sorting,language-agnostic,pseudocode

Anecdotally, most loops can be represented by summation. In general this isn't true, for example I could create the loop for(int i = n; i > 1; i = ((i mod 2 == 0) ? i / 2 : 3 * i + 1))) i.e. initialize i to n, on...

algorithm,pseudocode,directed-graph,topological-sort

There's no particular reason to use a stack as opposed to some other kind of collection. If we pop elements nondeterministically, then we can realize all possible topological orders. Thus, the topological order is unique if and only if the collection contains one element each time we pop (except when...

algorithm,dynamic-programming,pseudocode

Yes, your idea is almost correct. Let's formalize it. Claim: f(i, j) is the size of the largest triangle with the right bottom corner at the (i, j) position and it is computed correctly. Proof: Let's use induction. The base case: for all cells in the first row and or...

algorithm,recursion,pseudocode

One small improvement that might help is defining it with tail recursion. Tail recursion happens when the very last thing to execute is the recursive call. To make this tail recursive, use a helper method and pass the running sum as a parameter. I'm pretty sure the pseudo code below...

The noise function used in Perlin noise is a seeded random number generator. That is, it must return the same value every time it is called with the same value for parameter, X. You can think of X as some position in space in a given dimension between the bounds...

It seems to me that the way you want to do it is: "Go through every character in the string and remember the character we've seen most times". However, that won't work. If we only remember the count for a single character, like "the character we've seen most times is...

dynamic,dynamic-programming,pseudocode

It's confusing syntax, and I'm pretty sure there's a mistake. It should be: for i in range(N - 1, 0, -1) //0, not -1 which I believe means for i from (N - 1) downto 0 //-1 was the step, like i-- or i -= 1 This makes sense with...

Returning -1 is a way of conveying the fact that the code reached the end without returning in the middle. Returning -1 in this case means that the element K does not exist in the array. Note that returning 0 is not used for this purpose as it could mean...

This expression uses % to do string formatting: ("How many teeth are on ring #i ?") % (i + 1) It tells Python to substitute (i + 1) in place of a placemarker (e.g. %s or %d) in the string "How many teeth are on ring #i ?". But there...

java,parsing,recursion,nlp,pseudocode

I wrote this for python. I believe you can read it as a pseudocode. I will edit the post for Java later . I added the Java implementation later. import re # grammar repository grammar_repo = [] s = "( S ( NP-SBJ ( PRP I ) ) ( [email protected]

The problem is, that the borders of the array are inclusive which means: When you access the positions from 6-8 there are 3 elements in your result (6,7,8). The logical result is: If you want just one element described by a range in an array you would have to write...

Probably you're just looking for deal: [maxSum, maxStartIndex, maxEndIndex] = deal(-inf,0,0) ...

I'm going to assume this is homework and you're supposed to stay true to the pseudo-code and not use other shortcut methods available. Pretty much the only thing the pseudo-code is missing is the for-loop. In your real code, instead of using for-in, I would just walk the string backwards:...

c++,terminal,infinite-loop,pseudocode

if (i % p == 0) { hasfactor = true; p++; } should be if (i % p == 0) { hasfactor = true; } p++; ...

Something like this Fiddle <div class="leftnav"> <a>http:/google.com</a> </div> .leftnav a {color:black} ...

arrays,if-statement,pseudocode

It calls for the A function which returns a boolean (0 or 1), so that's how it works. Then, when your code executes A[n − 1, j], it will call the A function, which is the function that you're defining there and it will (eventually) return your boolean This is...

math,geometry,line,pseudocode,angle

Let's define some notation: A := (a1, a1). B := (b1, b2). C := (c1, c2). Then the determinant D of the matrix 1 a1 a2 1 b1 b2 1 c1 c2 determines whether C lies left or right of the directed line AB [cf. Computational Geometry - Berg, van...

Assume that there is no negative values. Only use assign, loop, increment, sub, add. Div(A, B) { temp = 1; result = -1; loop(A) { temp = 0; increment(result) A = sub(A, B) } return add(result, temp); } ...

Based on vmp answer and all of your great help, I solved that problem. I used vmp's variables actualSelected and beingClicked, but not as boolean, to store the ID of both selected and clicked buttons. Let me explain, I think I didn't left enough informations to you to solve this...

mysql,select,conditional,pseudocode

You can use UNION ALL with two queries; one only returning rows when x is 0; the other only returning rows when x is not 0: SET @x = 0; SELECT * FROM table_x where @x = 0 UNION ALL SELECT * FROM table_y where @x <> 0; This only...

algorithm,time-complexity,analysis,pseudocode,asymptotic-complexity

To me this maps g(n)=n^2 function since loop for i=1 to n runs n times if you count all values from range [1,n]. Of course if it is [1,n) then you have g(n)=(n-1)^2 but that's matter of convention. Two nested loops , each running n times give you O(n^2) complexity...

You're in luck, there are 4096 contiguous ideographs starting at U+3400. Simply add 0x3400 to the value and take that Unicode character.