• 0 Posts
  • 83 Comments
Joined 6 months ago
cake
Cake day: February 18th, 2026

help-circle
  • Bin jetzt politisch zu wenig bewandert um zu bewerten wie es in Hessen mit extrema steht und ob das Land an sich schon am Tiefpunkt ist oder ob dort im öffentlichen Diskurs überhaupt differenziert wird. Würde aber wetten jemand mit ausreichend Sachkentniss könnte da einen Witz drauß machen










  • He’s completely overlooked the thing that annoys me the most: the unbelievable number of clicks you need to make in Windows/Microsoft to get anything done. – Saving a file to a folder of your choice:

    • Windows: Click ‘Save’ -> Click ‘Choose a different location’ -> Scroll down to skip all the favourites and default locations -> Click the drive where you want to save the file -> Find the folder -> Click ‘Save’
    • Linux: Click ‘Save’ -> Go to the folder -> press ‘Save’

    Not ot mention my recent attempts to rename a Bluetooth device (two devices of the same type were displayed under the same name, making it impossible to tell them apart) 🤮





  • Yes, this would work — but it comes with a subtle statistical bias: the character ‘W’ ends up underrepresented. With a naïve “avoid COW” approach, only about 25% of the grid will typically be ‘W’.

    A more elegant solution would be:

    • fill the grid completely at random
      • search for every “COW” cluster
        • whenever one is found, copy a random character from one cell in the cluster into another cell of the same cluster
      • Iterate until no “COW” remains

    That keeps the distribution much closer to uniform while still guaranteeing a valid puzzle. Then just insert the single “COW” manually wherever you want the hidden solution to be.

    Julia code example
    s= (320,180)            #size
    m=rand(['C','O','W'],s) #random init
    c=1
    while c>0      #iterate till solved
        c=0
        for i in 1:first(s)
            for j in 1:last(s)
    
                #check for 'COW' in each cluster of 3 and copy a character
                #from a rendom cell to an other random cell of the cluster if found
                
                if i>2 &&  m[i-2:i,j] ==['C','O','W']   #vertical
                    c +=1
                    r =shuffle([1,2])
                    m[i-r[1],j] = m[i-r[2],j]
                end
                if j>2 && m[i,j-2:j]  ==['C','O','W']   #horizontal
                    c +=1
                    r =shuffle([0,1,2])
                    m[i,j-r[1]] = m[i,j-r[2]]
                end
            end
        end
    end
    

    The neat part is that this preserves an almost perfectly balanced character frequency.

    For comparison, the puzzle in the example image seems to contain roughly:

    C: ~260 (~25%) O: ~520 (~50%) W: ~244 (~25%)

    So the original author clearly used a different generation strategy.

    Possibly on purpose: visually, ‘C’ and ‘O’ are much easier to confuse than ‘W’. Reducing the number of 'W’s therefore increases the search difficulty. In that sense, the approach suggested by @Snazz@lemmy.world is probably preferable: keep the distribution mostly balanced, but intentionally bias it just enough to make the puzzle psychologically annoying.

    I wonder if there is a non iterative way to generate this puzzle with a ‘uniform’ character distribution 🤔