sadjf's blog

By sadjf, history, 2 years ago, In English

i am super bad at math and i need to know how to get better at it in problem solving

  • Vote: I like it
  • +2
  • Vote: I do not like it

| Write comment?
»
2 years ago, # |
Rev. 3   Vote: I like it -9 Vote: I do not like it

if you can solve all of them then you do not need to learn math until you become specialist 1st four in o(1) and last 2 in log(n)

1) 2+2=?

2) 12*12=?

3) 1034/11=?

4) ceil(12*11.1)=?

5) gcd(1023,111234)=?

6) hcf(1234,345)=?

  • »
    »
    2 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    ok i can solve them but how do i get better at (problem solving math) for example this problem https://codeforces.com/contest/584/problem/A i cant solve it unless i see the solution and understand it

    • »
      »
      »
      2 years ago, # ^ |
      Rev. 3   Vote: I like it 0 Vote: I do not like it

      Hi, thanks for asking!

      This problem (584A) tests your creativity skills, and you may have to learn how to construct the corresponding number.

      One solution is to just construct a string of "t"s (when t is not 10) with n digits, and clearly the resulting number is a multiple of t. Here is my code:

      n,t=input().split()
      n=int(n)
      t=int(t)
      if t==10:
          if n==1:print(-1)
          else:print(10**(n-1))
      else:print(str(t)*n)
      

      Another way is to start from the largest n-digit number, and "work backwards" to subtract the remainder:

      n,t=input().split()
      n=int(n)
      t=int(t)
      if t==10 and n==1:
          print(-1) # only case of -1
      else:
          k=10**n-1 # largest number with n digits
          k=k-(k%t) # minus its remainder, leaving the quotient times t
          #         # thus k is now a multiple of t
          #         # k always has n digits as at most t-1<10 is subtracted from k
          #         # (think about when n=1, and think why t=10 is not possible in this case
          print(k)
      

      In short, it is a problem of creativity that you get by problem soslving :)

»
2 years ago, # |
  Vote: I like it +4 Vote: I do not like it

Afaik in the US Algebra 2 or Geometry is enough for problem solving. Really, though, no complex mathematics like calculus are needed. Maybe the problem isn't that you are bad at math but rather you aren't used to math problems.

»
2 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Firstly, check out this website Alcumus. It's a wonderful platform to practice math problems. The problem quality is quite good and the learning curve is always very genuine.

Secondly, in CP, besides high school maths, you need to have good grip on the following two topics: - Number theory - Combinatorics / Counting

But only solving text book problems on those will not be sufficient. You need to have a good intuition about things like division, sieve, gcd, lcm, primes, etc. and when/how to apply them. So for that I'll recommend practicing those problems on Codeforces or any other OJ that has some good video tutorials available.

  • »
    »
    2 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    i am still in 8th grade and the problem is when i try to solve and practice math problems on codeforces i dont know when/how to apply them so i just see the editorial and understand how it happens and thats it but i still cant solve math problems

    • »
      »
      »
      2 years ago, # ^ |
        Vote: I like it +3 Vote: I do not like it

      Okay, since you're in 8th grade I don't think you would know about the two topics that I mentioned above.Keeping in mind this comment, if you're facing obstacles in solving Div2A level math problems, then here's the thing: those problems do not rely on the knowledge of some senior level math topic. Perhaps, they require you to think about the problem in a greedy way to figure out the solution. Sometimes it's about picking up a observation, and sometimes it's about coming up with a simple formula.

      Though they're easy but you'll need to practice a good amount of such problems before you become good at them. So my advice would be to practice more of those problems (say around 50). And avoid wasting much time thinking on a single problem. Try brain-storming for say around 20 mins, and then go read the editorial if nothing clicks. This way you'll know about a lot of ideas/approaches which will help you solve these problems next time.

»
2 years ago, # |
  Vote: I like it -27 Vote: I do not like it
  • »
    »
    2 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Sir this is such a 2000s joke, literally anyone knows this link nowadays