updated at 2022. 12. 27. 오전 6:47:10

This commit is contained in:
rl544
2022-12-27 06:47:09 +09:00
parent 51fa9ab584
commit 54637bfda2
+26 -40
View File
@@ -16,38 +16,28 @@ class Solution {
continue; continue;
} }
while(cc==false){ while(cc==false){
// for(int a = 1; a <= cacheSize; a ++){ int bcon = 0;
// if(hs.get(a) == null) { for(int cs = 1; cs <= Math.min(cacheSize, aIdx); cs ++){
int bcon = 0; if(hs.getOrDefault(hsA[aIdx-cs],"").equals(c)){
for(int cs = 1; cs <= Math.min(cacheSize, aIdx); cs ++){ int x = hsA[aIdx-cs];
if(hs.getOrDefault(hsA[aIdx-cs],"").equals(c)){ hs.put(x,c);
int x = hsA[aIdx-cs]; hss.put(x,aIdx);
hs.put(x,c); for(int cb = aIdx-cs; cb > Math.max(aIdx - cacheSize,0); cb--)
hss.put(x,aIdx); hsA[cb]=hsA[cb-1];
for(int cb = aIdx-cs; cb > Math.max(aIdx - cacheSize,0); cb--){ hsA[aIdx++]=x;
// hss.put(hsA[cb-1],cb); answer += hit;
hsA[cb]=hsA[cb-1]; bcon = 1;
} break;
}
// System.out.println(aIdx+" "+x+" 초기중복"); }
hsA[aIdx++]=x; if(bcon != 0) break;
answer += hit; ccon = oa;
bcon = 1; hs.put(oa,c);
// oa--; hss.put(oa,aIdx);
break; hsA[aIdx++]=oa;
} answer += miss;
} if(oa++==cacheSize) cc = true;
if(bcon != 0) break;
ccon = oa;
hs.put(oa,c);
hss.put(oa,aIdx);
// System.out.println(aIdx+" "+oa+" 최초키입력");
hsA[aIdx++]=oa;
answer += miss;
if(oa++==cacheSize) cc = true;
break; break;
// }
// } // aIdx > cacheSize-1
} }
if(ccon == 0 && cc){ if(ccon == 0 && cc){
int con = 0; int con = 0;
@@ -74,15 +64,11 @@ class Solution {
min = Math.min(hss.get(a),min); min = Math.min(hss.get(a),min);
mina = a; mina = a;
} }
} // - for }
// if(hss.get(a)==aIdx-cacheSize){ hs.put(mina,c);
hs.put(mina,c); hss.put(mina,aIdx);
hss.put(mina,aIdx); hsA[aIdx++]=mina;
// System.out.println(aIdx+" "+mina+" 교체"); answer += miss;
hsA[aIdx++]=mina;
answer += miss;
// break;
// }
} // if not matched } // if not matched
} // if Last } // if Last
} //Main for } //Main for