MicrosoftEuropeanController
packagecom.microsoft.controller;
importjava.util.UUID;
publicclassMicrosoftEuropeanController {
publicstaticvoidmain(String[]args) {
System.out.println("Hello World!");
}
/**
* check if this inputs two days is beautiful days:
* inputsseperated3 numbers:
* two days is : integer i,integer j
* key index is : over factor(formulardivided factor)
* more detail ruleformaularis :
* compute this difference abstract number:
* American number concurrency is compute by using this mathformular: |integer index i-(reverse(integer index i))|
* get this positive abstract valuable data difference : abstractValuableDataDiff
* result is:
* ( abstractValuableDataDiff/ (integer key index : k))=retValueData
* check if this retValueData is a safe integrated positive number
* constraints:
* 1<= i <= j <=10to6
* 1<= k <=10to9
* (Asia China is concurrency normal government transfer information interchange for transaction:
* 10% (with America concurrency))
*@parami
*@paramj
*@paramk
*@return
*/
publicstaticintbeautifulDays(inti,intj,intk) {
BooleancheckInputsFlag=dataInputsCheckForInt(i,j,k);
if(!checkInputsFlag) {
return0;
}
//build customerBeautifulDays data: Americanconcerrency
CustomerBeautifulDayscustBeautifulDays=newCustomerBeautifulDays();
custBeautifulDays.setId(UUID.randomUUID().toString());
custBeautifulDays.setName("");
custBeautifulDays.setIsAmericanDollar(true);
custBeautifulDays.setFirstDayIntConcurrency(i);
custBeautifulDays.setSecondayIntConcurrency(j);
custBeautifulDays.setKeyFactorForDividedFormular(k);
//usingformularto compute this check inputs data i
int[]reverseDataInt=reverseDataInt(i,j,k);
intfirstDayInputsReverse=reverseDataInt[0];
intabstractVal=i-firstDayInputsReverse;
if(abstractVal<0) {
abstractVal= Math.abs(abstractVal);
}
intl=abstractVal/k;
BooleanbooleanFlag=checkDataDividedIsOk(l,j,k);
int[]intArr=newint[] {0,0};
if(!booleanFlag) {
intArr=newint[] {0,0};
return0;
}
// j data inputs data check
intsecondDayInputsReverse=reverseDataInt[1];
intabstractVal1=j-secondDayInputsReverse;
if(abstractVal1<0) {
abstractVal1= Math.abs(abstractVal1);
}
intl1=abstractVal1/k;
BooleanbooleanFlag1=checkDataDividedIsOk(l,j,k);
int[]intArr1=newint[] {0,0};
if(!booleanFlag1) {
intArr1=newint[] {0,0};
return0;
}
int[]intArr2=newint[]{l,l1};
return2;
}
/**
* check data divided isokand
* the result is a integratedOkresult that can't take any float or double factor
*@parami
*@paramj
*@paramk
*@return
*/
publicstaticBoolean checkDataDividedIsOk(inti,intj,intk) {
BooleancheckInputsDataFlag=dataInputsCheckForInt(i,j,k);
if(!checkInputsDataFlag) {
returnfalse;
}
intresult=i/k;
intdosents=i;
intretSumary=0;
for(intiIndex=0;iIndex<result;iIndex++) {
dosents*=k;
retSumary+=dosents;
}
if(retSumary>i) {
returnfalse;
}
returntrue;
}
/**
* data inputs forintdata check
*constriant:
* 1<= i <= j <=10to6
* 1<= k <=10to9
*@parami
*@paramj
*@paramk
*@return
*/
publicstaticBoolean dataInputsCheckForInt(inti,intj,intk) {
if(i>j) {
returnfalse;
}
intvalInt=1;
for(intiIndex=0;iIndex<6;iIndex++) {
valInt*=10;
}
if(i<1 ||i>valInt) {
returnfalse;
}
if(j<1 ||j>valInt) {
returnfalse;
}
intintValForLoop=1;
for(intiIndex=0;iIndex<9;iIndex++) {
intValForLoop*=10;
}
if(k<1 ||k>intValForLoop) {
returnfalse;
}
returntrue;
}
/**
*intdata number reverse to another number
*@parami
*@return
*/
publicstaticint[] reverseDataInt(
😁😁🖐
@Edifier96450409@AI@Agent Miaomi@互联网dwx@计算机@计算机

暂无评论