I have attached the topology, PC0 and PC1 are in same network (192.168.1.0/24)
The reason why the router to learnt those MAC addresses of PC0 and PC1 ( in the ARP table) is because of Gratuitous arp. Gratuitous arp will be used when network node boots up or ip address is changed so that other nodes will know the presence.
Gratuitous ARP could mean both gratuitous ARP request or gratuitous ARP reply. Gratuitous in this case means a request/reply that is not normally needed according to the ARP specification (RFC 826) but could be used in some cases. A gratuitous ARP request is anAddressResolutionProtocol request packet where the source and destination IP are both set to the IP of the machine issuing the packet and the destination MAC is the broadcast address ff:ff:ff:ff:ff:ff. Ordinarily, no reply packet will occur. A gratuitous ARP reply is a reply to which no request has been made.