I don’t know what operation could help here. I know which operations could help for specific cases. For example, if x = 1, y=1, then 1+1 =2, well then I could subtract 1. The messes up the other inputs though.
Conceptually what I think I need to do is to get a way for two different inputs to have the same output. I think division could help? But then 1 / 2 = 0.5, so that’s no good. I think I kind of get the number line stuff but I don’t understand how I can get x + y to have the same output for two of the inputs.
Yes! It’s neat that you got the right concept even though you didn’t understand the details: something about the concept made sense to you despite the concretes.
If you’re doing integer division, you would get a different result for that division. Review what I said about integer division and remainder operators earlier if that’s not clear to you.
If you’re doing real number division, then to map multiple inputs to the same output you can combine division with floor.
Try looking at two number lines for n/10 with integers or floor(n/10) for reals and see what kinda mapping you get. Write out a few numbers and draw a few arrows but feel free to skip some (it’d be tedious writing them all).
Calling them “bad habits” is judgmental prior to reaching a decisive conclusion in (self) debate.
It’s biased. Even if all sides of you internally agree they are flawed habits, it’s biased to call them “bad habits” unless you also call all known alternatives “bad” too. If you use neutral terms for an alternative, that’s biased. All your current ideas are flawed and don’t satisfy all sides of you, so they are all “bad” in the same sense.
I’d recommend the word “flawed” instead of “bad”. There are other descriptive terms that can be useful too like “unsatisfactory”, “contains errors” or “imperfect” (but “imperfect” can be a biased thing used by people who are trying to downplay their problems, so while I think the term is useful sometimes it also has some danger kind of like “bad” has some danger).
Elliot in our tutoring thread mentioned how sleep is important. He gave some basic advice and then mentioned to go look up some tips myself. The thing is I have done that. Plenty of times. Yet they’ve failed a bunch of times.
Yeah and feel free to not do advice again if you’ve done it before and it doesn’t work for you. I don’t know what you’ve already tried so I was just giving advice appropriate for someone who is at the beginning. If you’re not at the beginning, you can drop the topic or give more information.
If you post stuff relevant to someone else on the forum, you can ping/notify them by using their name with an @ in front like this: @Dface. This is often good to do if they aren’t actively participating in the topic where your post is so they might miss it (whereas there’s no point pinging me for your posts in your tutoring topic).
also @lmd eternity’s post and my reply here may be relevant for you
When you look at the n/10 number lines, can you find any section which matches your goal? The goal is, for 3 inputs in a row, the first output is the smallest, and the second and third outputs are equal. You could be more specific by also requiring them to be 1 apart, but it might be fixable if they aren’t.
If you can find a section that does the right type of transformation, then the other issue is how to use it.
It says I’ve played 18 hours. That should be more-or-less accurate. I’m usually good at not leaving a game on if I’m not playing it.
The dandelions (?) seem to be levels cleared. I’ve beaten 82 levels. I beat the first seven levels, completed 100$ of the first three areas (the lake, solitary island, temple ruins), beat most of the fourth area (just stuck on two of the challenge levels), and the rest are just random levels from the other unlocked areas.
I don’t know for how long I’ve been playing it if the amount cleared is good or not but I’ve enjoyed it so far. I do think certain aspects of thinking about how to approach levels has gotten better. One thing I’ve gotten better about is getting used to focusing on what the text says. I forgot which level it was but I remember some text being surrounded by water so I just subconsciously thought I couldn’t interact with it. At some point I realized water isn’t anything and beat the level.
I’ve also watched a few walkthroughs of areas I’ve already completed to see if there was a different way I could approach the puzzles. I haven’t looked at any walkthroughs to help me clear a puzzle. Just to see how other people approached the same puzzles.
Do you have any advice on how to approach the game?
I’ve decided to be done for now. I tracked it for a while. I more-or-less consistently practiced for 5 minutes a day until early June.
Right now I just practice here and there when I feel like it. About once a week I’d say? I average around 120wpm at 100% for common english words. I plan to restart at some point cause I did enjoy practicing it and getting faster, its just at some point I noticed that at some point I would keep restarting, and get tilted, if I mis-typed even a little just so I could get a better score.
Yeah that’s fair. I should’ve been a bit clearer with the point I was making there. I think I’ve mentioned it elsewhere, but I kind of intentionally avoid using tips. It’s less that tips have failed a bunch of times and more so I make the tips fail. An example of this would be the 5-second rule I got from Mel Robbins. Its been a while since I listened to the audiobook, but the advice given in the book was that you should count down from 5 and then at 0 make yourself do the task at hand. It was actually (and still kinda is) pretty effective for me. However, for a good amount of stuff that I didn’t want to do but I felt like I had to do I would just avoid counting down. I need to get out of bed soon so I can get to work on time? I could count down from 5 but I also really want to stay in bed. So I just avoid counting down.
Kk. Whenever I do my writing that I end up sharing its usually done in my note-taking app and then I just copy and paste it in here. So I kind of don’t think of it as a proper post. I’ll be more mindful to think of it as a post.
Hmm. Now that I got an answer, which I did figure out by looking at the number line, I’m unsure as to how I actually figured it out using a number line. Mmm.
Shifting the bottom was confusing, but I saw that for n/2 every two inputs would map to a single output. 1 and 0 mapped to 0, 2 and 3 mapped to 1, 4 and 5 mapped to 2, etc.
So I thought to just add +1 to the input(n to n+1). In my head that would shift the pairs that mapped to the same number.
Hmm, but what am I doing from the outputs side of things? n/2 to (n+1)/2 is me adding 1/2 to the number line. I shifted the bottom number line over by 1/2. Ok, but what does that mean? Especially since its an integer number line thats confusing. Hmm. Ok lets put it like this:
it was a n number line, we moved it to the right by doing +1. Son to n+1. So 0 now maps to 1, 1 to 2, 2 to 3, etc. Ok. Then I proceeded to divide that number line by 2. For an integer number line that means every two inputs will map to the same output. Ok, but also to divide a number line is to shrink it. Do I see how it shrinks? The gaps were previously gaps of 1. Now they should be gaps of 1/2.
Ok so this is where I got to in understanding my answer:
With reals the number line shrinking would mean that 1 would map to 1/2, it shrunk by 1/2 so it needs to go twice the distance to its original spot. That can’t happen with integers so by dividing it by 2 (multiplying it by 1/2), things shrink differently I guess? With reals n to n/2 there would be a gap of 1/2 in between numbers doubling the space. With integers you just map back to the previous number until you cross the gap.
The shift is 1 on the top number line, or on the bottom number line it’s half in terms of numbers but it’s one increment (moving the numbers over by one) which is enough to change the results for some but not all inputs. Another way to view it is that it’s enough to change the rounding. Adding half makes stuff that already ended in n.5 go up instead of rounding down, while stuff ending in n.0 stays the same since it becomes n.5 and rounds back down to n.0
I wouldn’t do that. That makes your scores not actually represent your real typing speed or accuracy. Instead, I’d say to do practice sessions like this: First, do some warm up or practice. If you use the same typing test for that, just ignore your score and never restart. Then do 1-3 serious tests where you count your score and also don’t restart. Having a second and third chance if you want them can reduce the pressure and let you raise your max and average for the day in case one attempt went poorly.
Your typing does sound good though so practicing more is totally optional.
I cleared 140 levels. Steam says 33 hours played but I leave games open a lot. I’m not sure what time gets counted (like if you’re on the pause menu or the level select screen, does that count, or only if you leave it unpaused inside a level, or what – I’ve left it open in all those ways). I’m really good at this kind of game so don’t worry about being slower. I’d guess your results are probably above average. I still haven’t beaten the game (I think I’m close though) and I only have one achievement from fully clearing an area but I think I may have cleared at least the minimum number of levels in every zone (where it says like 3/6 completion or 10/6).
I usually just skip past levels if I feel a bit stuck. Doing other levels lets me improve at the game so when I revisit old levels sometimes they’re a lot easier than before. This works with both general skill level and specific techniques.
Yeah, good.
I haven’t looked at any walkthroughs or hints because sometimes they have spoilers for later levels. Alternative solutions could teach you strategies you don’t know that you could use on other levels. So there’s a significant spoiler risk. I know there are upsides though (in general, I too like watching videos to see how other people approached a game I just played) so it’s up to you.
Look for patterns in what types of levels you get stuck on.
Look for patterns in what works. Like you can find specific techniques that can be reused on other levels. You can remember them and potentially name them or write them down.
You can also find bigger picture strategies for how to think about a level and find which of those are effective. For example, one strategy is to break the level into parts: try to view it as multiple separate smaller puzzles and think about them one at a time.
Don’t get stuck for a long time on a level unless you’re really enjoying it. If it’s only OK to keep at it, or if it’s frustrating, then continue with forward progress.
Yeah. That’s partially why I stopped. I realized if I’m constantly restarting, that’s not my actual typing speed (though I can get 120 consistently, it’s when I try and go faster). It happened gradually. When I first started typing I had no issues focusing on just practicing. As I got better I started getting annoyed at mistakes. Mmm. How would I put it? I started to get annoyed at myself for making the mistakes but instead of addressing/thinking about why those mistakes may be happening I would just get annoyed at them. Kind of like mosquitos. I don’t really think about why they bite, they just do and I get annoyed at them. I went from being ok with mistakes and getting better with practice, to seeing them as annoyances.
I kind of struggle with this a bit for a lot of games. My mentality is that these puzzles/levels were intended for me to beat now, so while I sometimes do just skip ahead if I’m really struggling I almost always keep coming back very soon after. I kind of feel bad for going ahead. Though I guess thats me assuming how the levels were designed and intended to be played.
The game design is that you can go to the next level when you clear out part of a zone. I think they didn’t want to make you do all the levels and get stuck. Some are even labelled extra levels or something like that. The game tells you how many you have to clear to pass a zone. Also sometimes it gives access to multiple zones at once so you don’t even have to pass a zone to try a different one. They did all that on purpose.
I also got an answer with mod, not remainder:
xor(x,y) = (x-y) mod 2
xor(0,0) = (0-0) mod 2 = 0
xor (1,0) = (1-0) mod 2 = 1
xor (0,1) = (0-1) mod 2 = 1
xor(1,1) = (1-1) mod 2 = 0
As I was writing this I thought of some other stuff and got this with remainder:
xor(x,y)= (x+y)%2
xor(0,0) = (0+0)%2 = 0%2 = 0
xor(1,0) = (1+0)%2 = 1%2 = 1
xor(0,1) = (0+1)%2 = 1%2 = 1
xor(1,1) = (1+1)%2 = 2%2 = 0
I confused myself for a bit with the inputs I had. I saw that n%2 had 0 mapped to 0, 1 mapped to 1, and 2 mapped to 0. However, I forgot that 1 shows up twice when going through the inputs.
I assume another solution for “or” with remainder? Hmm.
While in the process I decided to use remainder with my previous solution that used division.
I got equality:
equality(x,y) = (x+y+1)%2
equality(0,0) = (0+0+1)%2 = 1%2 = 1
equality(1,0) = (1+0+1)%2 = 2%2 = 0
equality(0,1) = (0+1+1)%2 = 2%2 = 0
equality(1,1) = (1+1+1)%2 = 3%2 = 1
I’m kind of stuck on another solution for “or” with remainder.
Here’s some other expressions I thought of while working on this assignment:
A linear solution for and(x,y) using integer arithmetic:
and(x,y) = (x+y)/2
and(0,0) = (0+0)/2 = 0/2 = 0
and(1,0) = (1+0)/2 = 1/2 = 0
and(0,1) = (0+1)/2 = 1/2 = 0
and (1,1) = (1+1)/2 = 2/2 = 1
You can implement nand by doing 1-((x+y)/2) for integer arithmetic
You can implement nor by doing 1-((x + y + 1)/ 2 for integer arithmetic.