import java.util.*;
import java.lang.*;
//Universal Time Converter
class UT_Converter{
private int hr;
private int min;
private int sec;
public UT_Converter(int hr, int min ){
// Checking the time
if(hr >= 0 && hr <= 24)
this.hr = hr;
else
this.hr = -1; //Error!
if(min >= 0 && min <= 60)
this.min = min;
else
this.min = -1; //Error!
// Populating the timeZones array
this.populateZones();
}
private void populateZones(){
this.
timeZones = new String[5]; this.timeZones[0] = "ATLANTIC";
this.timeZones[1] = "EASTERN";
this.timeZones[2] = "CENTRAL";
this.timeZones[3] = "MOUNTAIN";
this.timeZones[4] = "PACIFIC";
}
timeZone = timeZone.toUpperCase();
int time = -1;
// ATLANTIC
if( timeZone == this.timeZones[0] )
time = this.hr - 4;
// EASTERN
else if(timeZone == this.timeZones[1] )
time = this.hr - 5;
// CENTRAL
else if(timeZone == this.timeZones[2] )
time = this.hr - 6;
// MOUNTAIN
else if(timeZone == this.timeZones[3] )
time = this.hr - 7;
// PACIFIC
else if(timeZone == this.timeZones[4] )
time = this.hr - 8;
if(daylightSavings)
time += 1;
// Special case when we have to roll back the clock.
if( time < 0 )
time += 24;
return(time);
}
public void toString(int hour){
System.
out.
println(hour
+ ":" + this.
min); }
//Sample Code
UT_Converter UT = new UT_Converter(8,25);
UT.toString(UT.toTimeZone("EASTERN", true));
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgovL1VuaXZlcnNhbCBUaW1lIENvbnZlcnRlcgpjbGFzcyBVVF9Db252ZXJ0ZXJ7CgoJcHJpdmF0ZSBpbnQgaHI7Cglwcml2YXRlIGludCBtaW47Cglwcml2YXRlIGludCBzZWM7Cglwcml2YXRlIFN0cmluZ1tdIHRpbWVab25lczsKCglwdWJsaWMgVVRfQ29udmVydGVyKGludCBociwgaW50IG1pbiApewoKCSAgIC8vIENoZWNraW5nIHRoZSB0aW1lCgkJaWYoaHIgPj0gMCAmJiBociA8PSAyNCkKCQkJdGhpcy5ociA9IGhyOwoJCWVsc2UKCQkJdGhpcy5ociA9IC0xOyAvL0Vycm9yIQoJCQoJCWlmKG1pbiA+PSAwICYmIG1pbiA8PSA2MCkKCQkJdGhpcy5taW4gPSBtaW47CgkJZWxzZQoJCQl0aGlzLm1pbiA9IC0xOyAvL0Vycm9yIQoKCSAgIC8vIFBvcHVsYXRpbmcgdGhlIHRpbWVab25lcyBhcnJheQoJCXRoaXMucG9wdWxhdGVab25lcygpOwoJfQoJCglwcml2YXRlIHZvaWQgcG9wdWxhdGVab25lcygpewoJCXRoaXMudGltZVpvbmVzID0gbmV3IFN0cmluZ1s1XTsKCQl0aGlzLnRpbWVab25lc1swXSA9ICJBVExBTlRJQyI7CgkJdGhpcy50aW1lWm9uZXNbMV0gPSAiRUFTVEVSTiI7CgkJdGhpcy50aW1lWm9uZXNbMl0gPSAiQ0VOVFJBTCI7CgkJdGhpcy50aW1lWm9uZXNbM10gPSAiTU9VTlRBSU4iOwoJCXRoaXMudGltZVpvbmVzWzRdID0gIlBBQ0lGSUMiOwoJfQoJCglwdWJsaWMgaW50IHRvVGltZVpvbmUoU3RyaW5nIHRpbWVab25lLCBCb29sZWFuIGRheWxpZ2h0U2F2aW5ncyl7CgkJdGltZVpvbmUgPSB0aW1lWm9uZS50b1VwcGVyQ2FzZSgpOwoJCWludCB0aW1lID0gLTE7CgkJCgkJLy8gQVRMQU5USUMKCQlpZiggdGltZVpvbmUgPT0gdGhpcy50aW1lWm9uZXNbMF0gKQoJCQl0aW1lID0gdGhpcy5ociAtIDQ7CgoJCS8vIEVBU1RFUk4KCQllbHNlIGlmKHRpbWVab25lID09IHRoaXMudGltZVpvbmVzWzFdICkKCQkJdGltZSA9IHRoaXMuaHIgLSA1OwoKCQkvLyBDRU5UUkFMCgkJZWxzZSBpZih0aW1lWm9uZSA9PSB0aGlzLnRpbWVab25lc1syXSApCgkJCXRpbWUgPSB0aGlzLmhyIC0gNjsKCgkJLy8gTU9VTlRBSU4KCQllbHNlIGlmKHRpbWVab25lID09IHRoaXMudGltZVpvbmVzWzNdICkKCQkJdGltZSA9IHRoaXMuaHIgLSA3OwoKCQkvLyBQQUNJRklDCgkJZWxzZSBpZih0aW1lWm9uZSA9PSB0aGlzLnRpbWVab25lc1s0XSApCgkJCXRpbWUgPSB0aGlzLmhyIC0gODsKCgkJaWYoZGF5bGlnaHRTYXZpbmdzKQoJCQl0aW1lICs9IDE7CgoJICAgLy8gU3BlY2lhbCBjYXNlIHdoZW4gd2UgaGF2ZSB0byByb2xsIGJhY2sgdGhlIGNsb2NrLgoJCWlmKCB0aW1lICA8IDAgKQoJCQl0aW1lICs9IDI0OwoJCgkJcmV0dXJuKHRpbWUpOwoJfQoJCglwdWJsaWMgdm9pZCB0b1N0cmluZyhpbnQgaG91cil7CgkJU3lzdGVtLm91dC5wcmludGxuKGhvdXIgKyAiOiIgKyB0aGlzLm1pbik7Cgl9CgkJCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb257CgkJLy9TYW1wbGUgQ29kZQoJCVVUX0NvbnZlcnRlciBVVCA9IG5ldyBVVF9Db252ZXJ0ZXIoOCwyNSk7CgkJVVQudG9TdHJpbmcoVVQudG9UaW1lWm9uZSgiRUFTVEVSTiIsIHRydWUpKTsKCQkJCgl9Cn0=