Ok , I tried this on my test sketch and I’m happy to report that this indeed works, with hidden SSID’s too !! 
My only gripe is this 
while (!Blynk.connected() && ssid_count<ssid_mas_size);
if (!Blynk.connected() && ssid_count==ssid_mas_size) {
Serial.println("I could not connect to blynk =( Ignore and move on. but still I will try to connect to wi-fi " + String(ssid[ssid_count-1]));
}
with this,even if it doesn’t connect to Blynk Servers it stays connected to that Access point (“Ignore and move on. but still I will try to connect to wi-fi”) . Somewhat defeating the whole purpose of redundancy (Connect to the access point that has internet connectivity or else try the next one ).Any ideas for this ?