Hello Azeem!
This is a very good question and indicates that you are thinking very deeply of the reasons behind specific functionalities of OSPF. Yes, it does make sense to assume that if there is no change to the network, then at the end of the sequence you describe, it should not need to go to Step A. However, it is important to realise the purpose of the sending of the LSA every 30 minutes in order to answer this question.
When LSAs are sent because of a topology change, the sequence number is incremented. This indicates that the LSA contains newer information than the router has recieved until now and this new information must be incorporated into the LSDB. This is the very purpose of the sequence numbers.
If there is no change in topology after 1800 seconds, or 30 minutes, that is, no LSAs with a newer sequence number have been sent or received, in order to confirm that all routers are up to date, it is important to send out a new LSA just to be sure that no errors have occured over this time period. The DR and BDR don’t know which, if any routers have outdated information. Therefore, in order to make sure that all routers incorporate the most recent information into their LSDBs, an incremented sequence number is used, forcing all routers to process the information as if it is new, even if they are already up to date. In this way, if even one router is not up to date, it will be updated, since all routers are forced to process the information.
This can be seen clearly in RFC 2328 which describes OSPF v2 (https://tools.ietf.org/html/rfc2328). The following text describes the process. Notice the text in bold:
If the LS age field of one of the router's self-originated
LSAs reaches the value LSRefreshTime, <strong>a new instance of the LSA
is originated, even though the contents of the LSA (apart from
the LSA header) will be the same.</strong> The value of LSRefreshTime is
set to 30 minutes.
When it says a new instance of the LSA, this indicates that the sequence number will be incremented, thus requiring all routers to process the information as new information.
I hope this has been helpful!
Laz