├── CSES ├── CSES_BookShop_DP.java ├── CSES_GridPaths.java ├── CSES_MinimizingCoins_DP.java ├── CSES_MoneySums_DP.java ├── CSES_RangeSum2_SegTree.java ├── CSES_RangeSum_SegTree.java └── CSES_RemovingDigits.java ├── Code-Wars ├── CW_DigPow.java ├── CW_FindDivisor.java └── CW_Triple_Double.java ├── CodeForces ├── CF_.java ├── CF_1.java ├── CF_102B.java ├── CF_106B.java ├── CF_110A.java ├── CF_112A.java ├── CF_114A.java ├── CF_116A.java ├── CF_118A.java ├── CF_118B.java ├── CF_119A.java ├── CF_122A.java ├── CF_129A.java ├── CF_131A.java ├── CF_131B.java ├── CF_133A.java ├── CF_133B.java ├── CF_134A.java ├── CF_136A.java ├── CF_1385B.java ├── CF_1385C.java ├── CF_139A.java ├── CF_144A.java ├── CF_146A.java ├── CF_14B.java ├── CF_151A.java ├── CF_157A.java ├── CF_158A.java ├── CF_160A.java ├── CF_160B.java ├── CF_165A.java ├── CF_169B.java ├── CF_16A.java ├── CF_200B.java ├── CF_208A.java ├── CF_214A.java ├── CF_215A.java ├── CF_222A.java ├── CF_228A.java ├── CF_22A.java ├── CF_230B.java ├── CF_231A.java ├── CF_233A.java ├── CF_236A.java ├── CF_236B.java ├── CF_237A.java ├── CF_242B.java ├── CF_245B.java ├── CF_25A.java ├── CF_25B.java ├── CF_263A.java ├── CF_265A.java ├── CF_265B.java ├── CF_266A.java ├── CF_266B.java ├── CF_267A.java ├── CF_268A.java ├── CF_26B.java ├── CF_271A.java ├── CF_27A.java ├── CF_27C.java ├── CF_281.java ├── CF_282A.java ├── CF_318A.java ├── CF_320A.java ├── CF_322A.java ├── CF_327B.java ├── CF_32A.java ├── CF_32B.java ├── CF_32C.java ├── CF_337A.java ├── CF_339A.java ├── CF_339B.java ├── CF_340A.java ├── CF_344A.java ├── CF_347.java ├── CF_34B.java ├── CF_350A.java ├── CF_355A.java ├── CF_359C.java ├── CF_361A.java ├── CF_378A.java ├── CF_381A.java ├── CF_384A.java ├── CF_385A.java ├── CF_386B.java ├── CF_389.java ├── CF_38A.java ├── CF_38A3.java ├── CF_391.java ├── CF_391A.java ├── CF_393A.java ├── CF_401A.java ├── CF_405A.java ├── CF_405C.java ├── CF_41A.java ├── CF_439B.java ├── CF_43A.java ├── CF_43B.java ├── CF_441A.java ├── CF_443A.java ├── CF_445A.java ├── CF_447A.java ├── CF_447B.java ├── CF_447C.java ├── CF_448A.java ├── CF_448B.java ├── CF_448D.java ├── CF_450B.java ├── CF_451A.java ├── CF_452A.java ├── CF_454A.java ├── CF_454B.java ├── CF_454C.java ├── CF_456A.java ├── CF_456B.java ├── CF_463B.java ├── CF_474A.java ├── CF_474B.java ├── CF_478B.java ├── CF_47A.java ├── CF_486A.java ├── CF_489A.java ├── CF_489B.java ├── CF_490A.java ├── CF_496A.java ├── CF_499B.java ├── CF_49A.java ├── CF_49B.java ├── CF_4A.java ├── CF_4C.java ├── CF_50.java ├── CF_501A.java ├── CF_501B.java ├── CF_509A.java ├── CF_510A.java ├── CF_519A.java ├── CF_519B.java ├── CF_548B.java ├── CF_550B_BitMasks.java ├── CF_554A.java ├── CF_554B.java ├── CF_556A.java ├── CF_579A.java ├── CF_5A.java ├── CF_61A.java ├── CF_69A.java ├── CF_71A.java ├── CF_75A.java ├── CF_76.java ├── CF_81A.java ├── CF_82A.java ├── CF_894A.java ├── CF_932A.java ├── CF_937A.java ├── CF_937B.java ├── CF_96A.java └── README.txt ├── FAST_Input.java ├── FaceBook_Hacker_Cup_2014 └── FB_HackerCup_B.java ├── Find_Distict_Pair.java ├── HackerRank └── HackerRank_Coin_Change.java ├── ICPC Live Archive ├── LA_2006.java ├── LA_2052.java ├── LA_2062.java ├── LA_2083.java ├── LA_2086.java ├── LA_2158.java ├── LA_2202.java ├── LA_2362.java ├── LA_2389.java ├── LA_2483.java ├── LA_2485.java ├── LA_2731.java ├── LA_2732.java ├── LA_2759.java ├── LA_3093.java ├── LA_3470.java ├── LA_3594.java ├── LA_3996.java ├── LA_4084.java ├── LA_4088.java ├── LA_4104.java ├── LA_4552.java ├── LA_4837.java ├── LA_4964.java ├── LA_4967.java ├── LA_5800.java ├── LA_5880.java ├── LA_5889.java ├── LA_6114.java ├── LA_6161.java ├── LA_6336.java ├── LA_6360.java ├── LA_6404.java ├── LA_6517.java ├── LA_6569.java ├── LA_6762.java ├── LA_6762_MaxSubRect.java └── README.txt ├── Infex_Postfix.java ├── README.md ├── Spoj ├── README.txt ├── SPOJ.java ├── SPOJ_1000.java ├── SPOJ_13356.java ├── SPOJ_13392.java ├── SPOJ_14741.java ├── SPOJ_14745.java ├── SPOJ_17110.java ├── SPOJ_2523.java ├── SPOJ_346_DP.java ├── SPOJ_3700_Dijkastra.java ├── SPOJ_511.java ├── SPOJ_5676.java ├── SPOJ_74.java ├── SPOJ_8215.java ├── SPOJ_ARITH2.java ├── SPOJ_BeautifulNumbers.java └── SPOJ_Recursion.java ├── TIMUS ├── README.txt └── TIMUS_2002.java ├── TJU ├── README.txt └── TJU_1868.java ├── TopCoder ├── README.txt ├── TC2014_250_1C.java ├── TC2014_450_1C.java ├── TCCC_2004_Round1.java ├── TCCC_Online_Round_4_2004_250_DP.java ├── TCHC_15.java ├── TCHS07_Alpha_Round1_Div1_250.java ├── TCHS07_Alpha_Round2_Div1_500.java ├── TCHS07_Gamma_Round2_Div1_250.java ├── TCHS07_SemiFinals_DIV1.java ├── TCHS_27_Round1.java ├── TCHS_35_DIV1.java ├── TCHS_Delta_Round3_Div1.java ├── TCHS_SRM40_Round1.java ├── TCHS_SRM41_DIV1.java ├── TCHS_SRM48_DIV1.java ├── TCHS_SRM7.java ├── TCHS_SRM_29_DIV1.java ├── TCHS_SRM_30_DIV1.java ├── TCHS_SRM_34_Div1.java ├── TCHS_SRM_38_DIV1.java ├── TCHS_SRM_44_DIV1.java ├── TCHS_SRM_52_DIV1.java ├── TCHS_SRM_55_DIV1.java ├── TCHS_SRM_56_DIV1.java ├── TCHS_SRM_58_DIV1.java ├── TCHS_SRM_61_DIV_1.java ├── TCHS_ٍSRM_38_DIV1_500.java ├── TCO06_Round2.java ├── TCO19_SRM_747.java ├── TCO19_SRM_748.java ├── TCO19_SRM_753.java ├── TCO_1B_2014_200.java ├── TCO_2003_Q_Round2.java ├── TCO_2005_Div1_250.java ├── TCO_2012_DIV_1A.java ├── TCO_2016_Round_1C_Div1.java ├── TCSH_SRM_34_DIV1_450.java ├── TC_147.java ├── TC_148.java ├── TC_154_500.java ├── TC_158.java ├── TC_160.java ├── TC_160_500NOR.java ├── TC_164.java ├── TC_166.java ├── TC_166_500.java ├── TC_173.java ├── TC_173_500.java ├── TC_174.java ├── TC_177_500.java ├── TC_178.java ├── TC_187_300.java ├── TC_187_DIV1_300.java ├── TC_199.java ├── TC_200.java ├── TC_201_Math.java ├── TC_202.java ├── TC_203.java ├── TC_205_500.java ├── TC_206.java ├── TC_208.java ├── TC_210.java ├── TC_214.java ├── TC_215_500.java ├── TC_216.java ├── TC_218.java ├── TC_224.java ├── TC_225.java ├── TC_226.java ├── TC_227.java ├── TC_227_500.java ├── TC_228.java ├── TC_230.java ├── TC_230_500_BinarySearch.java ├── TC_233.java ├── TC_234.java ├── TC_236.java ├── TC_236_500.java ├── TC_238.java ├── TC_238_500.java ├── TC_240.java ├── TC_242.java ├── TC_244_500.java ├── TC_246.java ├── TC_246_400.java ├── TC_247_500.java ├── TC_248.java ├── TC_249.java ├── TC_250.java ├── TC_255.java ├── TC_255_500.java ├── TC_256.java ├── TC_257.java ├── TC_258.java ├── TC_265.java ├── TC_268.java ├── TC_268_500.java ├── TC_272.java ├── TC_273.java ├── TC_274.java ├── TC_277.java ├── TC_278.java ├── TC_279.java ├── TC_280.java ├── TC_281.java ├── TC_283.java ├── TC_288.java ├── TC_290.java ├── TC_296.java ├── TC_298_500_FiboPos.java ├── TC_302.java ├── TC_302_500.java ├── TC_304.java ├── TC_304_500.java ├── TC_308.java ├── TC_308_450.java ├── TC_312.java ├── TC_315.java ├── TC_315_500.java ├── TC_316.java ├── TC_320.java ├── TC_322.java ├── TC_324_500.java ├── TC_327_Basic_DP.java ├── TC_328.java ├── TC_329.java ├── TC_330.java ├── TC_332.java ├── TC_335_500_Nor.java ├── TC_336.java ├── TC_337.java ├── TC_338.java ├── TC_340.java ├── TC_341_500.java ├── TC_343.java ├── TC_346.java ├── TC_349.java ├── TC_350.java ├── TC_352.java ├── TC_352_500.java ├── TC_356.java ├── TC_357.java ├── TC_364.java ├── TC_367.java ├── TC_372.java ├── TC_373.java ├── TC_375.java ├── TC_376.java ├── TC_384_500.java ├── TC_388_500.java ├── TC_395.java ├── TC_396.java ├── TC_404_500HARD.java ├── TC_408.java ├── TC_408_500.java ├── TC_416.java ├── TC_417.java ├── TC_420.java ├── TC_422.java ├── TC_427.java ├── TC_432.java ├── TC_437.java ├── TC_442.java ├── TC_442_500.java ├── TC_443.java ├── TC_445.java ├── TC_446.java ├── TC_447.java ├── TC_448.java ├── TC_449_500.java ├── TC_452.java ├── TC_453_5.java ├── TC_456.java ├── TC_467_500.java ├── TC_470.java ├── TC_474.java ├── TC_480.java ├── TC_482.java ├── TC_490.java ├── TC_498.java ├── TC_500_Div2.java ├── TC_505.java ├── TC_506.java ├── TC_515.java ├── TC_518_500.java ├── TC_519.java ├── TC_521.java ├── TC_521_500.java ├── TC_523_DFS.java ├── TC_526.java ├── TC_529_500.java ├── TC_532.java ├── TC_542.java ├── TC_557.java ├── TC_560.java ├── TC_564.java ├── TC_565.java ├── TC_571.java ├── TC_571_500.java ├── TC_572.java ├── TC_575.java ├── TC_577.java ├── TC_582.java ├── TC_584.java ├── TC_585.java ├── TC_598.java ├── TC_602.java ├── TC_603.java ├── TC_603_500.java ├── TC_605.java ├── TC_607.java ├── TC_607_500.java ├── TC_608.java ├── TC_609.java ├── TC_610.java ├── TC_611_500.java ├── TC_612.java ├── TC_613.java ├── TC_614.java ├── TC_615.java ├── TC_616.java ├── TC_617.java ├── TC_618.java ├── TC_618_500.java ├── TC_620.java ├── TC_620_500.java ├── TC_621.java ├── TC_621_500DP.java ├── TC_624.java ├── TC_625.java ├── TC_626.java ├── TC_627.java ├── TC_627_500.java ├── TC_628.java ├── TC_630.java ├── TC_631.java ├── TC_632.java ├── TC_634.java ├── TC_634_500_Mid.java ├── TC_635.java ├── TC_638.java ├── TC_640.java ├── TC_642.java ├── TC_642_500.java ├── TC_647.java ├── TC_649.java ├── TC_652.java ├── TC_652_500.java ├── TC_657.java ├── TC_658.java ├── TC_662.java ├── TC_665.java ├── TC_668.java ├── TC_668_1000.java ├── TC_669.java ├── TC_681.java ├── TC_682.java ├── TC_684.java ├── TC_689.java ├── TC_690.java ├── TC_698.java ├── TC_701.java ├── TC_712.java ├── TC_719.java ├── TC_723.java ├── TC_727.java ├── TC_728.java ├── TC_768.java ├── TC_769.java ├── TC_China_2008_Round_1C.java ├── TC_CoderDojo_DIV1.java ├── TC_TCCC06.java └── TC_TCO_2017_Algorithm_Pittsburgh_DIV1.java ├── URI ├── README.txt ├── URI_1022.java ├── URI_1028.java ├── URI_1069.java ├── URI_1104.java ├── URI_1121.java ├── URI_1168.java ├── URI_1192.java ├── URI_1199.java ├── URI_1216.java ├── URI_1250.java ├── URI_1259.java ├── URI_1285.java ├── URI_1329.java ├── URI_1387_cpp.java └── URI_1467.java ├── UVA ├── README.txt ├── UVA_10004.java ├── UVA_10009_BFS_SSSP.java ├── UVA_10018.java ├── UVA_10023.java ├── UVA_10035.java ├── UVA_10036DP.java ├── UVA_10048_FLOYD.java ├── UVA_10055.java ├── UVA_10056.java ├── UVA_10063.java ├── UVA_10070.java ├── UVA_10082.java ├── UVA_10083.java ├── UVA_10098.java ├── UVA_100_REC.java ├── UVA_10106.java ├── UVA_10127.java ├── UVA_10207.java ├── UVA_10220.java ├── UVA_10235.java ├── UVA_10276.java ├── UVA_10282.java ├── UVA_10295.java ├── UVA_10300.java ├── UVA_10305_TopSort.java ├── UVA_10323.java ├── UVA_10327.java ├── UVA_10344.java ├── UVA_10363.java ├── UVA_10370.java ├── UVA_10392.java ├── UVA_10394.java ├── UVA_10405_DPLongest.java ├── UVA_10420.java ├── UVA_10446.java ├── UVA_10452.java ├── UVA_10464.java ├── UVA_10469.java ├── UVA_10473.java ├── UVA_10474.java ├── UVA_10523.java ├── UVA_10533.java ├── UVA_10551.java ├── UVA_10579.java ├── UVA_10600_MST.java ├── UVA_10608.java ├── UVA_10616_DP.java ├── UVA_10653_BFS_SSSP.java ├── UVA_10684.java ├── UVA_10696.java ├── UVA_10699.java ├── UVA_10789.java ├── UVA_10810.java ├── UVA_10812.java ├── UVA_10814.java ├── UVA_10815.java ├── UVA_10887.java ├── UVA_108DP.java ├── UVA_10921.java ├── UVA_10924.java ├── UVA_10925.java ├── UVA_10931.java ├── UVA_10940.java ├── UVA_10945.java ├── UVA_10970.java ├── UVA_10986_Dijkastra.java ├── UVA_10986_Dijkstra.java ├── UVA_11015_Floyd.java ├── UVA_110401.java ├── UVA_11044.java ├── UVA_11057.java ├── UVA_11059.java ├── UVA_11060.java ├── UVA_11151_DPPalindrom.java ├── UVA_11185.java ├── UVA_11192.java ├── UVA_11223.java ├── UVA_1124.java ├── UVA_11244.java ├── UVA_113.java ├── UVA_11332.java ├── UVA_11360.java ├── UVA_11371.java ├── UVA_11417.java ├── UVA_11448.java ├── UVA_11461.java ├── UVA_11462.java ├── UVA_11466.java ├── UVA_11479.java ├── UVA_1148_BFS_SSSP.java ├── UVA_11503.java ├── UVA_11504.java ├── UVA_11530.java ├── UVA_11547.java ├── UVA_11549.java ├── UVA_11559.java ├── UVA_11629.java ├── UVA_11631_MST.java ├── UVA_11713.java ├── UVA_11716.java ├── UVA_11744.java ├── UVA_1174_MST.java ├── UVA_11764.java ├── UVA_11770_TopSort_InDegree.java ├── UVA_11777.java ├── UVA_11799.java ├── UVA_11827.java ├── UVA_11830.java ├── UVA_11838_SCC.java ├── UVA_11849.java ├── UVA_11854.java ├── UVA_11875.java ├── UVA_11879.java ├── UVA_11934.java ├── UVA_11942.java ├── UVA_11970.java ├── UVA_11984.java ├── UVA_11991.java ├── UVA_1213_DP.java ├── UVA_12250.java ├── UVA_1226.java ├── UVA_12289.java ├── UVA_1230.java ├── UVA_12502.java ├── UVA_12504.java ├── UVA_12543.java ├── UVA_12577.java ├── UVA_12592.java ├── UVA_12667.java ├── UVA_12696.java ├── UVA_1329.java ├── UVA_136.java ├── UVA_1585.java ├── UVA_264.java ├── UVA_324.java ├── UVA_344.java ├── UVA_348DP_MAtrix.java ├── UVA_355.java ├── UVA_357.java ├── UVA_374.java ├── UVA_389.java ├── UVA_417.java ├── UVA_424.java ├── UVA_439_BFS_SSSP.java ├── UVA_441_REC.java ├── UVA_446.java ├── UVA_455.java ├── UVA_459.java ├── UVA_483.java ├── UVA_484.java ├── UVA_494.java ├── UVA_495.java ├── UVA_524.java ├── UVA_558_Bellman_ford.java ├── UVA_568.java ├── UVA_572_DFS.java ├── UVA_574.java ├── UVA_575.java ├── UVA_583.java ├── UVA_623.java ├── UVA_628.java ├── UVA_673.java ├── UVA_694.java ├── UVA_713.java ├── UVA_729.java ├── UVA_750.java ├── UVA_787.java ├── UVA_793.java ├── UVA_871.java ├── UVA_929_Dijkastra_2Dgrid.java ├── UVA_929_Dijkstra_2D_Matrix.java └── UVA_993.java ├── bit_manipulation.java ├── geeksforgeeks ├── GFG_find_the_element_that_appears_once_in_sorted_array.java ├── GFG_reverse_bits.java └── GOG_the_modified_string.java ├── leetcode ├── LA_6661_DP.java ├── Leetcode_104_DFS.java ├── Leetcode_1143_DP.java ├── Leetcode_1218_DP.java ├── Leetcode_198_DP.java ├── Leetcode_303_DP.java ├── Leetcode_338.java ├── Leetcode_392.java ├── Leetcode_494_DP.java ├── Leetcode_5.java ├── Leetcode_516_DP.java ├── Leetcode_53.java ├── Leetcode_559_DFS.java ├── Leetcode_583_DP.java ├── Leetcode_62_DP.java ├── Leetcode_63_DP.java ├── Leetcode_64_DP.java ├── Leetcode_70_DP.java ├── Leetcode_712_DP.java ├── Leetcode_718_DP.java ├── Leetcode_72_DP.java └── Leetcode_746_DP.java └── map_set.java /CSES/CSES_RemovingDigits.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class CSES_RemovingDigits { 4 | public static void main(String args[]) throws Exception { 5 | Scanner sc = new Scanner(System.in); 6 | 7 | 8 | // Another solution - Greedy solution 9 | int n = sc.nextInt(), count = 0; 10 | 11 | while (n != 0) { 12 | 13 | int max = 0, subN = n; 14 | while (subN != 0) { 15 | int rem = subN % 10; 16 | if (rem > max) 17 | max = rem; 18 | 19 | subN /= 10; 20 | } 21 | count++; 22 | n -= max; 23 | } 24 | System.out.print(count); 25 | 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Code-Wars/CW_DigPow.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class CW_DigPow { 4 | 5 | //Link: http://www.codewars.com/kata/5552101f47fc5178b1000050/train/java 6 | 7 | 8 | public static long digPow(int n, int p) { 9 | int count =((int)Math.log10(n)+1+p)-1,rem=0,oldN=n;long res=0; 10 | while(n != 0 ){ 11 | rem = n%10; 12 | res += (long) Math.pow(rem, count); 13 | n /= 10; 14 | count--; 15 | 16 | } 17 | 18 | return (res % oldN == 0 ? res / oldN : -1); 19 | } 20 | 21 | } -------------------------------------------------------------------------------- /Code-Wars/CW_FindDivisor.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class CW_FindDivisor { 4 | 5 | //Link : http://www.codewars.com/kata/542c0f198e077084c0000c2e/train/java 6 | public long numberOfDivisors(int n) { 7 | // TODO please write your code below this comment 8 | if(n==0)return 0; 9 | 10 | long count=0; 11 | for(int i = 1 ; i*i<=n;++i){ 12 | 13 | if(n%i==0) 14 | { 15 | count++; 16 | if(i*i!=n){ 17 | count++; 18 | } 19 | 20 | } 21 | 22 | 23 | 24 | } 25 | 26 | return count; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /Code-Wars/CW_Triple_Double.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class CW_Triple_Double 4 | { 5 | 6 | //Link : http://www.codewars.com/kata/55d5434f269c0c3f1b000058/train/java 7 | public static int TripleDouble(long num1, long num2) 8 | { 9 | int[] occ1 = new int[10],occ2=new int[10]; 10 | for(long i = 0;num1 !=0;num1 /=10){i = num1 % 10;occ1[(int)i]++;} 11 | for(long i = 0;num2 !=0;num2 /=10){i = num2 % 10;occ2[(int)i]++;} 12 | 13 | for(int i=0;i=3 && occ2[i]>=2)return 1; 15 | 16 | 17 | return 0; 18 | } 19 | } -------------------------------------------------------------------------------- /CodeForces/CF_102B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_102B{ 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | String num = sc.next(); 12 | if(num.length()==1){System.out.println(0);return;} 13 | 14 | int sum =0; 15 | int count =0; 16 | for(int i = 0 ; i Integer.MAX_VALUE)break; 22 | // count++; 23 | c++; 24 | } 25 | if(f){System.out.println("YES");System.out.println(c-1);} 26 | else 27 | System.out.println("NO"); 28 | 29 | 30 | 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /CodeForces/CF_129A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_129A{ 6 | 7 | public static void main(String[] args) { 8 | // TODO Auto-generated method stub 9 | 10 | Scanner sc = new Scanner(System.in); 11 | int n = sc.nextInt(); 12 | int[] a= new int[n]; 13 | for(int i = 0 ; i < n ;++i)a[i]=sc.nextInt(); 14 | int c =0; 15 | for(int i = 0; i < n ;++i) 16 | { 17 | int sum =0; 18 | for(int j = 0 ; j < n ;++j) 19 | { 20 | if(j==i)continue; 21 | sum +=a[j]; 22 | } 23 | if((sum&1)==0)c++; 24 | } 25 | System.out.println(c); 26 | 27 | 28 | 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /CodeForces/CF_133A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class CF_133A { 9 | public static void main(String[] args) throws IOException { 10 | 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | String word = br.readLine(); 15 | String res="";boolean f = false; 16 | for(int i = 0 ; i 0) { 11 | 12 | int n = sc.nextInt(); 13 | int[] arr = new int[2 * n]; 14 | 15 | for (int i = 0; i < arr.length; ++i) arr[i] = sc.nextInt(); 16 | 17 | Set set = new LinkedHashSet<>(); 18 | for (int i = 0; i < arr.length; ++i) set.add(arr[i]); 19 | 20 | List res = new ArrayList<>(set); 21 | 22 | for(int i =0; i < res.size(); ++i)System.out.print(res.get(i)+" "); 23 | 24 | System.out.println(); 25 | } 26 | 27 | 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /CodeForces/CF_1385C.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class CF_1385C { 4 | 5 | public static void main(String args[]) throws Exception { 6 | Scanner sc = new Scanner(System.in); 7 | 8 | int t = sc.nextInt(); 9 | while (t-- > 0) { 10 | 11 | int n = sc.nextInt(); 12 | int[] arr = new int[n]; 13 | for (int i = 0; i < n; ++i) arr[i] = sc.nextInt(); 14 | 15 | int j = n - 1; 16 | while (j > 0 && arr[j] <= arr[j - 1]) j--; 17 | while (j > 0 && arr[j] >= arr[j - 1]) j--; 18 | 19 | System.out.println(j); 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /CodeForces/CF_139A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_139A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | int n = sc.nextInt(); 11 | int i =0; 12 | int[] a = new int[7]; 13 | for( i = 0; i < 7 ;++i)a[i]=sc.nextInt(); 14 | while(true) 15 | { 16 | 17 | for( i =1 ; i <=7;++i) 18 | { 19 | 20 | if(n-a[i-1]<=0) 21 | { 22 | System.out.print(i);return; 23 | } 24 | n -=a[i-1]; 25 | } 26 | 27 | } 28 | 29 | 30 | 31 | 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /CodeForces/CF_151A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | import java.util.Vector; 6 | 7 | public class CF_151A { 8 | 9 | public static void main(String[] args) { 10 | 11 | // System.out.println(LetterChanges("hello*3")); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | int n = sc.nextInt(),k=sc.nextInt(),l=sc.nextInt() 15 | ,c=sc.nextInt(),d=sc.nextInt(),p=sc.nextInt(),nl=sc.nextInt(),np=sc.nextInt(); 16 | 17 | System.out.println(count(n,k,l,c,d,p,nl,np)); 18 | 19 | } 20 | 21 | public static int count(int n ,int k , int l , int c , int d,int p, int nl, int np) { 22 | 23 | int first = (k*l)/nl; 24 | int sec = d*c; 25 | int third = p/np; 26 | 27 | int min = Math.min(Math.min(first, sec),third )/n; 28 | return min ; 29 | 30 | } 31 | 32 | 33 | } 34 | -------------------------------------------------------------------------------- /CodeForces/CF_157A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_157A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | int[] r = new int[n]; 13 | int[] c = new int[n]; 14 | 15 | for(int i =0; i < n; ++i){ 16 | for(int j=0 ; j =array[k-1]&&array[i]>0) 24 | { 25 | count++; 26 | } 27 | } 28 | System.out.println(count); 29 | 30 | 31 | } 32 | 33 | 34 | } 35 | -------------------------------------------------------------------------------- /CodeForces/CF_165A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_165A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | 13 | int count =0; 14 | int[]x=new int[n],y=new int[n]; 15 | for(int i = 0; i x[j]&&y[i]==y[j])right++; 24 | if(x[i]y[j])u++; 27 | } 28 | if(right>=1&&u>=1&&left>=1&&low>=1)count++; 29 | } 30 | 31 | System.out.println(count); 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /CodeForces/CF_200B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_200B { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | int n = sc.nextInt(); 11 | double avg =0; 12 | for(int i = 0 ; i < n ;++i) 13 | { 14 | int N = sc.nextInt(); 15 | avg +=(double)(N/2.0); 16 | } 17 | double frac = 2.0/n; 18 | double d =(double)(avg*frac); 19 | 20 | System.out.printf("%.12f",d); 21 | 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /CodeForces/CF_214A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_214A { 6 | 7 | public static void main(String[] args) { 8 | Scanner sc = new Scanner(System.in); 9 | 10 | int n = sc.nextInt(); 11 | int m = sc.nextInt(); 12 | int count =0; 13 | for(int i =0 ; i <=1000;++i) 14 | { 15 | for(int j = 0 ; j <=1000;++j) 16 | { 17 | if(Math.pow(i, 2)+j==n && Math.pow(j, 2)+i==m)count++; 18 | 19 | } 20 | } 21 | 22 | 23 | System.out.println(count); 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /CodeForces/CF_215A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_215A{ 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | 13 | int[]a = new int[n]; 14 | for(int i = 0 ; i < n ;++i)a[i]=sc.nextInt(); 15 | int m =sc.nextInt(); 16 | int[]b= new int[m]; 17 | for(int i = 0 ; i < m ;++i)b[i]=sc.nextInt(); 18 | int c = 0; 19 | int max = 0; 20 | for(int i =0 ; i < n ;++i) 21 | { 22 | for(int j = 0 ; j < m ; ++j) 23 | { 24 | if(b[j]%a[i]==0){ 25 | int curr = b[j]/a[i]; 26 | if(curr>max) 27 | { 28 | max = curr; 29 | c = 0; 30 | } 31 | 32 | if(curr==max)c++; 33 | 34 | } 35 | 36 | 37 | } 38 | } 39 | System.out.println(c); 40 | 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /CodeForces/CF_228A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashSet; 4 | import java.util.Scanner; 5 | import java.util.Set; 6 | 7 | public class CF_228A { 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | Sets = new HashSet(); 13 | int n =4; 14 | while(n-->0)s.add(sc.nextInt()); 15 | System.out.println(4-s.size()); 16 | 17 | 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /CodeForces/CF_22A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Collections; 5 | import java.util.HashSet; 6 | import java.util.Scanner; 7 | import java.util.Vector; 8 | 9 | public class CF_22A { 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | int n = sc.nextInt(); 16 | int[] array = new int[n]; 17 | 18 | for(int i = 0 ; i < n ;++i)array[i]=sc.nextInt(); 19 | 20 | Arrays.sort(array); 21 | int max = array[0]; 22 | boolean f =false; 23 | for(int i = 1 ; i < n;++i) 24 | { 25 | if(array[i]>max) 26 | { 27 | max = array[i]; 28 | f=true; 29 | break; 30 | } 31 | } 32 | if(f) 33 | System.out.println(max); 34 | else 35 | System.out.println("NO"); 36 | 37 | 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /CodeForces/CF_233A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_233A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | if(n%2 !=0){System.out.println(-1); 13 | return ; 14 | 15 | } 16 | 17 | for(int i = 1 ; iset = new HashSet(); 19 | for(int i = 0 ; i < word.length();++i)set.add(word.charAt(i)); 20 | if((set.size()&1)==0)System.out.println("CHAT WITH HER!"); 21 | else 22 | System.out.println("IGNORE HIM!"); 23 | 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /CodeForces/CF_237A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashMap; 4 | import java.util.Scanner; 5 | 6 | public class CF_237A { 7 | 8 | public static void main(String[] args) { 9 | 10 | Scanner sc = new Scanner(System.in); 11 | int n = sc.nextInt(); 12 | int count =1; 13 | int[] a = new int[100010]; 14 | while(n-->0) 15 | { 16 | int f =sc.nextInt(),s=sc.nextInt(); 17 | int r = f*62+s; 18 | a[r]++; 19 | 20 | count = Math.max(count, a[r]); 21 | 22 | } 23 | System.out.println(count); 24 | 25 | 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /CodeForces/CF_242B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Collections; 4 | import java.util.Scanner; 5 | import java.util.Vector; 6 | 7 | public class CF_242B { 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | Vectorv = new Vector(); 13 | int n = sc.nextInt(); 14 | int min =Integer.MAX_VALUE,max=Integer.MIN_VALUE; 15 | 16 | for(int i = 0 ; i < n ;++i) 17 | { 18 | int l = sc.nextInt(),r=sc.nextInt(); 19 | if(lmax)max = r; 21 | v.add(l+" "+r); 22 | 23 | } 24 | 25 | for(int i = 0 ; i < v.size();++i) 26 | { 27 | if(v.elementAt(i).equals(min+" "+max)) 28 | { 29 | System.out.println(i+1);return; 30 | } 31 | } 32 | System.out.println(-1); 33 | 34 | 35 | 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /CodeForces/CF_265A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_265A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | char[] line = sc.next().toCharArray(); 13 | if(n==1&&line[0]=='0'){System.out.println(1);return;} 14 | int count =0; 15 | int carry=1; 16 | for(int i = 0 ; i < line.length;++i) 17 | { 18 | if(line[i]=='1'&&carry!=0) 19 | { 20 | line[i]='0'; 21 | carry = 1; 22 | count++; 23 | } 24 | else if(line[i]=='0') 25 | { 26 | if(carry == 1) 27 | { 28 | line[i]='1'; 29 | count++; 30 | carry =0; 31 | } 32 | 33 | } 34 | 35 | 36 | } 37 | System.out.println(count); 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /CodeForces/CF_265B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class CF_265B { 9 | 10 | public static void main(String[] args) throws IOException { 11 | 12 | Scanner sc = new Scanner(System.in); 13 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 14 | 15 | int n = sc.nextInt(); 16 | int[] array = new int[n]; 17 | int ones=0; 18 | int res =0; 19 | for(int i = 0 ; i 1&&ones>1&&array[i]==1&&array[i-1]==0) 25 | { 26 | res++; 27 | } 28 | } 29 | System.out.println(res+ones); 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /CodeForces/CF_266A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_266A { 6 | 7 | public static void main(String[] args) { 8 | Scanner sc = new Scanner(System.in); 9 | 10 | int n = sc.nextInt(); 11 | String word = sc.next(); 12 | int count =0; 13 | for(int i = 1 ; i < word.length();++i) 14 | { 15 | if(word.charAt(i)==word.charAt(i-1))count++; 16 | } 17 | System.out.println(count); 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /CodeForces/CF_267A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.math.BigDecimal; 4 | import java.math.BigInteger; 5 | import java.util.ArrayList; 6 | import java.util.Random; 7 | import java.util.Scanner; 8 | 9 | public class CF_267A { 10 | 11 | public static void main(String[] args) throws Exception { 12 | 13 | Scanner sc= new Scanner(System.in); 14 | int count =0; 15 | int n = sc.nextInt(); 16 | while(n-->0) 17 | { 18 | int p = sc.nextInt(); 19 | int q = sc.nextInt(); 20 | if(p!=q && Math.abs(p-q)>=2)count++; 21 | 22 | } 23 | 24 | System.out.println(count); 25 | 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /CodeForces/CF_26B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashSet; 4 | import java.util.LinkedHashSet; 5 | import java.util.LinkedList; 6 | import java.util.Scanner; 7 | import java.util.Stack; 8 | import java.util.Vector; 9 | 10 | public class CF_26B { 11 | 12 | public static void main(String[] args) { 13 | Scanner sc = new Scanner(System.in); 14 | 15 | String bracket = sc.next(); 16 | Stackfirst = new Stack(); 17 | Stacksec = new Stack(); 18 | int count =0; 19 | for(int i = 0 ; i < bracket.length();++i) 20 | { 21 | if(bracket.charAt(i)=='(')first.push('('); 22 | if(bracket.charAt(i)==')'&&!first.isEmpty()&&first.peek()=='(') 23 | { 24 | first.pop(); 25 | count +=2; 26 | } 27 | 28 | } 29 | System.out.println(count); 30 | 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /CodeForces/CF_271A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashMap; 4 | import java.util.Scanner; 5 | 6 | public class CF_271A { 7 | 8 | public static void main(String[] args) { 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int y = sc.nextInt(); 12 | 13 | 14 | boolean check = false; 15 | for(int i = y+1 ; i <=10000;++i) 16 | { 17 | String line = String.valueOf(i); 18 | HashMapmap = new HashMap(); 19 | for(int j = 0 ; j < line.length();++j) 20 | { 21 | if(!map.containsKey(line.charAt(j))) 22 | { 23 | map.put(line.charAt(j), 1); 24 | check = true; 25 | } 26 | else 27 | { 28 | check =false; 29 | break; 30 | } 31 | } 32 | if(check) 33 | { 34 | System.out.println(i); 35 | return; 36 | } 37 | } 38 | 39 | 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /CodeForces/CF_27A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Collections; 5 | import java.util.Scanner; 6 | import java.util.Vector; 7 | 8 | public class CF_27A { 9 | 10 | public static void main(String[] args) { 11 | Scanner sc = new Scanner(System.in); 12 | 13 | int n = sc.nextInt(); 14 | Vectorv=new Vector(); 15 | 16 | for(int i = 0 ; i < n ;++i)v.add(sc.nextInt()); 17 | Collections.sort(v); 18 | 19 | for(int i = 1; i <=100000;++i) 20 | { 21 | int index = Collections.binarySearch(v, i); 22 | if(index<0){System.out.println(i);break;} 23 | } 24 | 25 | 26 | 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /CodeForces/CF_281.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class CF_281 { 9 | 10 | public static void main(String[] args) throws IOException { 11 | 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | Scanner sc = new Scanner(System.in); 14 | 15 | String word =br.readLine(); 16 | String res = "";String e =""; 17 | String fin="";String w =""; 18 | 19 | if(!(Character.isUpperCase(word.charAt(0)))) 20 | { 21 | char c = word.charAt(0); 22 | res =c+""; 23 | e=res.toUpperCase(); 24 | 25 | w=String.valueOf(c); 26 | fin = word.replaceFirst(w, e); 27 | 28 | System.out.println(fin); 29 | } 30 | else 31 | System.out.println(word); 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /CodeForces/CF_320A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_320A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | String num = sc.next(); 12 | boolean f= false; 13 | for(int i = 0 ; i < num.length();++i) 14 | { 15 | if(num.charAt(i)=='1')f=true; 16 | else if(num.charAt(i)=='4')f=true; 17 | else{ 18 | f=false;break; 19 | } 20 | } 21 | 22 | if(f) 23 | { 24 | if(num.contains("444")||num.charAt(0)!='1') 25 | System.out.println("NO"); 26 | else 27 | System.out.println("YES"); 28 | 29 | 30 | 31 | } 32 | else 33 | System.out.println("NO"); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /CodeForces/CF_322A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Collections; 4 | import java.util.HashSet; 5 | import java.util.Scanner; 6 | import java.util.Set; 7 | import java.util.Vector; 8 | 9 | public class CF_322A{ 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | int n = sc.nextInt(); 16 | int m = sc.nextInt(); 17 | System.out.println(n+m-1); 18 | 19 | for(int i = 1 ; i <=m;++i) 20 | { 21 | System.out.println(1+" "+(i)); 22 | } 23 | for(int i = 2 ; i <=n;++i) 24 | { 25 | System.out.println(i+" "+(1)); 26 | } 27 | 28 | 29 | } 30 | 31 | 32 | 33 | } 34 | -------------------------------------------------------------------------------- /CodeForces/CF_327B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.ArrayList; 4 | import java.util.Arrays; 5 | import java.util.HashSet; 6 | import java.util.List; 7 | import java.util.Scanner; 8 | import java.util.Vector; 9 | 10 | public class CF_327B { 11 | 12 | public static void main(String[] args) { 13 | Scanner sc = new Scanner(System.in); 14 | int n = sc.nextInt(); 15 | 16 | for(int i = 0 ; i < n ;++i)System.out.print((2*n+i)+" "); 17 | 18 | 19 | } 20 | 21 | 22 | } 23 | -------------------------------------------------------------------------------- /CodeForces/CF_32A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | import java.util.Stack; 6 | 7 | public class CF_32A { 8 | 9 | static int count =1; 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | int n = sc.nextInt(); 16 | long d = sc.nextLong(); 17 | int count =0; 18 | long[] array = new long[n]; 19 | for(int i = 0 ; i =c)res +=x-c; 18 | else 19 | res +=n-(c-x); 20 | c=x; 21 | 22 | } 23 | System.out.println(res); 24 | 25 | } 26 | 27 | 28 | } 29 | -------------------------------------------------------------------------------- /CodeForces/CF_340A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.ArrayList; 4 | import java.util.Collections; 5 | import java.util.Scanner; 6 | 7 | public class CF_340A{ 8 | 9 | public static void main(String[] args) { 10 | Scanner sc = new Scanner(System.in); 11 | 12 | int x = sc.nextInt(); 13 | int y = sc.nextInt(); 14 | int a = sc.nextInt(); 15 | int b = sc.nextInt(); 16 | 17 | System.out.println(res(b,x,y)-res(a-1,x,y)); 18 | 19 | } 20 | static int gcd(int x , int y) 21 | { 22 | if(y==0)return x; 23 | return gcd(y,x%y); 24 | 25 | } 26 | static int res(int n ,int x , int y) 27 | { 28 | 29 | int gcd=gcd(x,y); 30 | long lcm =(long)x*y/gcd; 31 | return (int) (n/lcm); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /CodeForces/CF_347.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class CF_347{ 7 | 8 | public static void main(String[] args) { 9 | 10 | Scanner sc = new Scanner(System.in); 11 | 12 | int count =0; 13 | int n = sc.nextInt(); 14 | int[] array = new int[n]; 15 | 16 | for(int i = 0; i Math.abs(n2-arr[i]))c3++; 17 | if(Math.abs(n1-arr[i])==Math.abs(n2-arr[i]))c2++; 18 | 19 | 20 | } 21 | System.out.println(c1+" "+c2+" "+c3); 22 | 23 | 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /CodeForces/CF_385A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | //A - Bear and Raspberry 8 | public class CF_385A { 9 | public static void main(String[] args) throws IOException { 10 | 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | int n = sc.nextInt(); 15 | int c = sc.nextInt(); 16 | int[] array = new int[n]; 17 | int res=0; 18 | for(int i = 0 ; i v = new Vector(); 14 | Vectorv2 = new Vector(); 15 | int p =sc.nextInt(); 16 | int n = sc.nextInt(); 17 | boolean f= false; 18 | int index =0; 19 | for(int j=0 ;j n) 23 | { 24 | System.out.println("NO"); 25 | 26 | 27 | } 28 | else 29 | System.out.println("YES"); 30 | 31 | 32 | 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /CodeForces/CF_448D.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_448D { 6 | static long n; 7 | static long m; 8 | static long k; 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | n = sc.nextLong(); 14 | m = sc.nextLong(); 15 | k =sc.nextLong(); 16 | 17 | long l = 1 ,r = n*m+1; 18 | // Binary search 19 | while(l >1; 22 | if(cal(m)1)System.out.println(-1); 25 | else if(array[n]<=array[1])System.out.println(tmp); 26 | else 27 | System.out.println(-1); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /CodeForces/CF_454C.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_454C { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | int m = sc.nextInt(); 11 | int n = sc.nextInt(); 12 | double rem=1.0; 13 | double cur_exp=0; 14 | 15 | for(int i = m ; i >0;--i) 16 | { 17 | double not_app=Math.pow((m*1.0-1)/m, n); 18 | double app = 1.0-not_app; 19 | app *=rem; 20 | 21 | cur_exp +=app*i; 22 | rem -=app; 23 | m--; 24 | } 25 | System.out.println(cur_exp); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /CodeForces/CF_456A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_456A { 6 | 7 | public static void main(String[] args) { 8 | // TODO Auto-generated method stub 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | boolean check = false; 13 | while(n-->0) 14 | { 15 | int n1 = sc.nextInt(); 16 | int n2 = sc.nextInt(); 17 | if(n1!=n2)check = true; 18 | 19 | } 20 | if(check)System.out.println( "Happy Alex"); 21 | else 22 | System.out.println("Poor Alex"); 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /CodeForces/CF_463B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_463B { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int n = sc.nextInt(); 12 | int energy=0,min=0; 13 | int[] arr = new int[n+1]; 14 | arr[0]=0; 15 | for(int i = 1; i < arr.length ; ++i)arr[i]=sc.nextInt(); 16 | for(int i = 0 ; i > 1) +( (m-n%m)*(n/m)*(n/m-1) >> 1), 17 | max = ((n-m+1)*(n-m) >> 1); 18 | 19 | System.out.println(min+" "+max); 20 | 21 | 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /CodeForces/CF_486A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_486A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | long n =sc.nextLong(); 11 | 12 | if((n&1)==0)System.out.println(n/2); 13 | else 14 | System.out.println(-(n+1)/2); 15 | 16 | 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /CodeForces/CF_499B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashMap; 4 | import java.util.HashSet; 5 | import java.util.Scanner; 6 | import java.util.Set; 7 | import java.util.StringTokenizer; 8 | 9 | public class CF_499B{ 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | int n = sc.nextInt(); 16 | int m = sc.nextInt(); 17 | HashMapmap = new HashMap(); 18 | while(m-->0) 19 | { 20 | String first = sc.next(),sec=sc.next(); 21 | if(first.length()<=sec.length())map.put(first, first); 22 | else 23 | map.put(first, sec); 24 | 25 | } 26 | 27 | for(int i =0; i < n ;++i) 28 | { 29 | String word = sc.next(); 30 | System.out.print(map.get(word)+" "); 31 | 32 | } 33 | 34 | 35 | 36 | } 37 | 38 | 39 | 40 | 41 | } 42 | -------------------------------------------------------------------------------- /CodeForces/CF_49B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.awt.Frame; 4 | import java.awt.event.WindowAdapter; 5 | import java.awt.event.WindowEvent; 6 | import java.util.ArrayList; 7 | import java.util.Scanner; 8 | 9 | import javax.swing.JFrame; 10 | import javax.swing.JOptionPane; 11 | import javax.swing.JPanel; 12 | 13 | public class CF_49B { 14 | 15 | public static void main(String[] args) { 16 | 17 | Scanner sc = new Scanner(System.in); 18 | 19 | String a = sc.next(); 20 | String b = sc.next(); 21 | int ans =1; 22 | for(int i =1 ; i <=10;++i) 23 | { 24 | try 25 | { 26 | int aa = Integer.parseInt(a,i); 27 | int bb = Integer.parseInt(b,i); 28 | ans = Math.max(ans, (Integer.toString(aa+bb, i)).length()); 29 | } 30 | catch(NumberFormatException e){ 31 | } 32 | 33 | 34 | } 35 | System.out.println(ans); 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /CodeForces/CF_4A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Collections; 7 | import java.util.Scanner; 8 | import java.util.Vector; 9 | 10 | public class CF_4A { 11 | 12 | public static void main(String[] args) throws IOException { 13 | 14 | Scanner sc = new Scanner(System.in); 15 | int kilo = sc.nextInt(); 16 | if(kilo %2==0&&kilo!=2) 17 | System.out.println("YES"); 18 | 19 | else 20 | System.out.println("NO"); 21 | 22 | 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /CodeForces/CF_50.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class CF_50 { 9 | 10 | public static void main(String[] args) throws IOException { 11 | 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | Scanner sc = new Scanner(System.in); 14 | 15 | 16 | int n = sc.nextInt(); 17 | int m = sc.nextInt(); 18 | 19 | int count =0; 20 | 21 | int mul = n*m; 22 | 23 | while(m !=0) 24 | { 25 | if(mul <=0)break; 26 | else if(mul ==1)break; 27 | mul -=2; 28 | count++; 29 | 30 | 31 | 32 | } 33 | 34 | System.out.println(count); 35 | 36 | 37 | } 38 | 39 | 40 | 41 | } 42 | -------------------------------------------------------------------------------- /CodeForces/CF_501A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_501A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | int a =sc.nextInt(),b=sc.nextInt(),c=sc.nextInt(),d=sc.nextInt(); 11 | 12 | int max1 =Math.max((3*a)/10, a-(a/250)*c); 13 | 14 | int max2 =Math.max((3*b)/10, b-(b/250)*d); 15 | if(max1==max2)System.out.println("Tie"); 16 | else if(max1>max2)System.out.println("Misha"); 17 | else 18 | System.out.println("Vasya"); 19 | 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /CodeForces/CF_509A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class CF_509A { 7 | 8 | public static void main(String[] args) { 9 | 10 | Scanner s = new Scanner(System.in); 11 | int n = s.nextInt(); 12 | int[][] array = new int[n][n]; 13 | Arrays.fill( array[0], 1); 14 | for(int i =0 ; i st = new Stack(); 18 | StringBuilder sb = new StringBuilder(""); 19 | for(int i = 0; i < word.length();++i) 20 | { 21 | if(st.size()>0 && st.peek()==word.charAt(i))st.pop(); 22 | else 23 | st.push(word.charAt(i)); 24 | 25 | } 26 | for(int i = 0; i < st.size();++i)sb.append(st.get(i)); 27 | 28 | System.out.println(sb); 29 | 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /CodeForces/CF_82A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class CF_82A{ 9 | 10 | public static void main(String[] args) throws NumberFormatException, IOException { 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | String [] ans = {"Sheldon", "Leonard", "Penny", "Rajesh", "Howard"}; 14 | 15 | int n = sc.nextInt(); 16 | 17 | n--; 18 | while(n>=5) 19 | { 20 | n -=5; 21 | n /=2; 22 | 23 | } 24 | System.out.println(ans[n]); 25 | 26 | 27 | } 28 | 29 | 30 | 31 | 32 | 33 | } 34 | -------------------------------------------------------------------------------- /CodeForces/CF_894A.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | public class CF_894A { 4 | public static void main(String args[]) throws Exception { 5 | Scanner sc = new Scanner(System.in); 6 | 7 | String str = sc.next(); 8 | int count = 0; 9 | for (int i = 0; i < str.length(); ++i) { 10 | for (int j = i + 1; j < str.length(); ++j) { 11 | for (int k = j + 1; k < str.length(); ++k) { 12 | 13 | if ((str.charAt(i) + "" + str.charAt(j) + "" + str.charAt(k)).equals("QAQ")) 14 | count++; 15 | } 16 | } 17 | 18 | 19 | } 20 | System.out.println(count); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /CodeForces/CF_932A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_932A { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | String word = sc.next(); 12 | 13 | System.out.println(word + "" + new StringBuilder(word).reverse().toString()); 14 | 15 | } 16 | 17 | static { 18 | 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /CodeForces/CF_937A.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashSet; 4 | import java.util.Scanner; 5 | import java.util.Set; 6 | 7 | public class CF_937A { 8 | 9 | public static void main(String[] args) { 10 | 11 | 12 | Scanner sc = new Scanner(System.in); 13 | 14 | int n =sc.nextInt(); 15 | Set s= new HashSet(); 16 | 17 | while(n-->0){ 18 | int x = sc.nextInt(); 19 | 20 | if(x != 0)s.add(x); 21 | } 22 | 23 | 24 | System.out.println(s.size()); 25 | 26 | 27 | } 28 | 29 | 30 | static { 31 | 32 | 33 | 34 | 35 | } 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /CodeForces/CF_937B.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class CF_937B { 6 | 7 | 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | int x = sc.nextInt(),y = sc.nextInt(); 14 | 15 | 16 | for(int i =y ; i > x ;--i){ 17 | 18 | if(primeCheck(i,x)){ 19 | System.out.println(i); 20 | return; 21 | } 22 | 23 | } 24 | 25 | System.out.println(-1); 26 | 27 | 28 | } 29 | 30 | public static boolean primeCheck(int x,int y){ 31 | 32 | for(int i = 2 ; i*i <= x && i <= y;++i)if(x % i == 0)return false; 33 | 34 | 35 | return true; 36 | } 37 | 38 | 39 | 40 | } 41 | -------------------------------------------------------------------------------- /CodeForces/README.txt: -------------------------------------------------------------------------------- 1 | website: 2 | http://codeforces.com/ 3 | 4 | Name of file is CF_ID(A,B,C,D,E): 5 | CF---> CodeForce 6 | ID-->number of problem 7 | A,B,C,D,E---> level of problem 8 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_2052.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | import java.util.Vector; 5 | 6 | public class LA_2052 { 7 | 8 | public static void main(String[] args) { 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int test = sc.nextInt(); 12 | while(test-->0) 13 | { 14 | int x = sc.nextInt(); 15 | int y = sc.nextInt(); 16 | 17 | if(x!=y && x-2!=y) 18 | System.out.println("No Number"); 19 | else if(x==y) 20 | System.out.println(x*2-(x&1)); 21 | else 22 | System.out.println(x*2-(x&1)-2); 23 | 24 | } 25 | 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_2083.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class LA_2083 { 6 | 7 | public static void main(String[] args) { 8 | // TODO Auto-generated method stub 9 | 10 | Scanner sc = new Scanner(System.in); 11 | 12 | System.out.println("n e"); 13 | System.out.println("- -----------"); 14 | double sum = 0.0; 15 | for(int i = 0 ; i <=9;++i) 16 | { 17 | sum += 1/fact(i); 18 | if(i==0||i==1)System.out.println(i+" "+(int)sum); 19 | 20 | else if(i==2)System.out.printf("%d %.1f\n",i,sum); 21 | 22 | else 23 | System.out.printf("%d %.9f\n",i,sum); 24 | 25 | } 26 | 27 | } 28 | 29 | public static double fact(int n) 30 | { 31 | if(n==0)return 1; 32 | 33 | double f = 1; 34 | for(int i =2 ; i <=n;++i)f *= i; 35 | 36 | return f; 37 | 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_2158.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class LA_2158 { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int test = sc.nextInt(); 12 | 13 | while(test-->0) 14 | { 15 | long n = sc.nextLong(); 16 | System.out.println(findTrailingZeros(n)); 17 | 18 | } 19 | 20 | 21 | } 22 | 23 | public static long findTrailingZeros(long number) { 24 | 25 | long count = 0; 26 | 27 | if(number ==1){ 28 | 29 | return 0; 30 | 31 | } 32 | 33 | if(number == 5){ 34 | return 1; 35 | } 36 | 37 | for ( int j = 5; number/j >= 1; j *= 5 ) 38 | count += number / j; 39 | 40 | return count; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_2202.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class LA_2202 { 7 | 8 | public static void main(String[] args) { 9 | 10 | Scanner sc= new Scanner(System.in); 11 | int test = sc.nextInt(); 12 | while(test-->0) 13 | { 14 | int n = sc.nextInt(); 15 | int[]array = new int[n]; 16 | for(int i = 0 ; i < n ; ++i)array[i]=sc.nextInt(); 17 | Arrays.sort(array); 18 | 19 | int mid= array.length%2 ==0? (array[array.length/2-1]+array[array.length/2])/2:array[array.length/2]; 20 | int sum =0; 21 | for(int i = 0 ; i < array.length;++i)sum +=Math.abs(array[i]-mid); 22 | System.out.println(sum); 23 | 24 | } 25 | 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_2362.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class LA_2362 { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | double sum =0.0; 12 | for(int i = 0 ; i < 12 ;++i)sum +=sc.nextDouble(); 13 | System.out.printf("$%.2f\n",sum/12); 14 | 15 | 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_3093.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | import java.util.regex.Matcher; 5 | import java.util.regex.Pattern; 6 | 7 | public class LA_3093 { 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | int test = sc.nextInt(); 14 | while(test-->0) 15 | { 16 | String res = ""; 17 | String line = sc.next(); 18 | for(int i =0 ; i0) 21 | for(int i = 1; i <=n ;++i)arr[i] += sc.nextInt(); 22 | 23 | boolean res=false; 24 | for(int i =1 ; i <=n; ++i) 25 | if(arr[i]==saveD) 26 | res=true; 27 | 28 | if(res) 29 | System.out.println("yes"); 30 | else 31 | System.out.println("no"); 32 | } 33 | 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_3594.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.math.BigInteger; 7 | import java.util.*; 8 | 9 | public class LA_3594 { 10 | 11 | 12 | public static void main(String[] args) throws IOException { 13 | 14 | Scanner sc = new Scanner(System.in); 15 | 16 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 17 | 18 | String line; 19 | while(!(line=br.readLine()).equals("#")) 20 | { 21 | int res =1; 22 | for(int i =1 ; i <=line.length();++i) 23 | { 24 | if(Character.isUpperCase(line.charAt(i-1))) 25 | res +=(line.charAt(i-1)-'A'+1)*i; 26 | } 27 | System.out.println(res-1); 28 | } 29 | 30 | 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_4084.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class LA_4084 { 7 | 8 | public static void main(String[] args) { 9 | 10 | Scanner sc = new Scanner(System.in); 11 | while(true) 12 | { 13 | int sum =0; 14 | 15 | int[] array = new int[6]; 16 | int min = Integer.MAX_VALUE,max=Integer.MIN_VALUE; 17 | for(int i = 0 ; i < 6 ;++i) 18 | { 19 | array[i]=sc.nextInt();sum +=array[i];min = Math.min(min, array[i]); 20 | max = Math.max(max, array[i]); 21 | } 22 | 23 | if (array[0] == 0 && array[1] ==0 && array[2] ==0 && array[3] == 0 && array[4] == 0 && array[5] == 0 )break; 24 | sum -=max+min; 25 | 26 | if((double)sum/4==sum/4)System.out.println((int)sum/4); 27 | else 28 | System.out.println((double)sum/4); 29 | 30 | 31 | } 32 | 33 | 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_4104.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.math.BigInteger; 7 | import java.util.Scanner; 8 | 9 | public class LA_4104 { 10 | 11 | public static void main (String [] args) throws IOException { 12 | 13 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 14 | 15 | Scanner sc = new Scanner(System.in); 16 | 17 | int c = sc.nextInt(); 18 | while(c-->0) 19 | { 20 | BigInteger x =sc.nextBigInteger(); 21 | BigInteger y = sc.nextBigInteger(); 22 | BigInteger n = sc.nextBigInteger(); 23 | 24 | 25 | 26 | System.out.println( x.modPow(y, n)); 27 | 28 | 29 | } 30 | 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_4552.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class LA_4552 { 7 | 8 | public static void main(String[] args) { 9 | Scanner sc = new Scanner(System.in); 10 | 11 | 12 | int test = sc.nextInt(); 13 | while(test-->0) 14 | { 15 | int[] array = new int[10]; 16 | int n = sc.nextInt(); 17 | for(int i = 0 ; i < 10 ; ++i)array[i]=sc.nextInt(); 18 | 19 | Arrays.sort(array); 20 | 21 | System.out.println(n+" "+array[array.length-3]); 22 | 23 | 24 | } 25 | 26 | 27 | } 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /ICPC Live Archive/LA_4964.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Collections; 5 | import java.util.Scanner; 6 | import java.util.Vector; 7 | 8 | public class LA_4964 { 9 | 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | int a1,a2,a3; 16 | 17 | while(true) 18 | { 19 | a1=sc.nextInt();a2=sc.nextInt();a3=sc.nextInt(); 20 | if( a1==0 && a2==0 && a3==0 )return; 21 | 22 | if((a2-a1)+a2==a3)System.out.println("AP "+((a2-a1)+a3)); 23 | else 24 | System.out.println("GP "+((a2/a1)*a3)); 25 | 26 | 27 | } 28 | 29 | 30 | 31 | 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /ICPC Live Archive/README.txt: -------------------------------------------------------------------------------- 1 | ICPC Live Archive: 2 | https://icpcarchive.ecs.baylor.edu/ 3 | 4 | file name: 5 | LA_ID 6 | LA--> Live archive 7 | ID -> id of problem -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Competitive-Programming 2 | Competitive-Programming-Solutions 3 | 4 | My problem solutions source code for the following online judge: 5 | TopCoder 6 | UVa 7 | CodeForces 8 | Spoj 9 | TJU 10 | TIMUS 11 | URI 12 | Icpc Live Archive 13 | this solutions for educational purpose,so when you CHEAT, when you COPY, you only cheat yourself!!!! Don't do it. 14 | There are some solutions under updating. 15 | Good Luck :) 16 | 17 | -------------------------------------------------------------------------------- /Spoj/README.txt: -------------------------------------------------------------------------------- 1 | Spoj online judge 2 | http://spoj.com/ 3 | 4 | file name : 5 | Spoj_ID 6 | ID: id of problem 7 | -------------------------------------------------------------------------------- /Spoj/SPOJ.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class SPOJ { 7 | 8 | //sum of digits spoj 9 | public static void main(String[] args) 10 | { 11 | 12 | Scanner sc = new Scanner(System.in); 13 | 14 | 15 | int start ;int end ; 16 | 17 | int sum=0,rem=0;int s=0; 18 | while(sc.hasNext()) 19 | { 20 | start = sc.nextInt(); end = sc.nextInt();int[] array = new int[end]; 21 | if(start==-1 && end==-1)break; 22 | for(int i = start ; i<=end;i++) 23 | { 24 | 25 | while(s!=0) 26 | { 27 | rem=s%10; 28 | sum+=rem; 29 | s/=10; 30 | } 31 | 32 | } 33 | 34 | System.out.println(sum); 35 | } 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /Spoj/SPOJ_14741.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class SPOJ_14741 { 6 | 7 | static int count =0; 8 | 9 | public static void main(String[] args) { 10 | Scanner sc = new Scanner(System.in); 11 | 12 | while(sc.hasNext()) 13 | { 14 | int n = sc.nextInt(); 15 | int c = sc.nextInt(); 16 | System.out.println(div(n,c)); 17 | } 18 | } 19 | public static int div(int n,int c) 20 | { 21 | 22 | if(n<=c)return 1; 23 | 24 | 25 | return div(n-n/2,c)+div(n/2,c); 26 | 27 | 28 | } 29 | 30 | 31 | } 32 | 33 | 34 | -------------------------------------------------------------------------------- /Spoj/SPOJ_14745.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class SPOJ_14745 { 6 | 7 | static String res =""; 8 | public static void main(String[] args) { 9 | 10 | Scanner sc = new Scanner(System.in); 11 | 12 | while(sc.hasNext()) 13 | { 14 | rev(sc.nextInt()); 15 | res=remove(res); 16 | System.out.println(res); 17 | res=""; 18 | } 19 | 20 | } 21 | public static void rev( int n ) 22 | { 23 | if(n==0)return ; 24 | 25 | res +=(n%10); 26 | 27 | rev(n/10); 28 | 29 | } 30 | public static String remove(String zero) 31 | { 32 | while(zero.charAt(0)=='0') 33 | { 34 | zero = new StringBuilder(zero).deleteCharAt(0).toString(); 35 | 36 | } 37 | res = zero; 38 | return res; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /Spoj/SPOJ_17110.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.Scanner; 5 | 6 | public class SPOJ_17110 { 7 | 8 | public static void main(String[] args)throws IOException { 9 | Scanner sc = new Scanner(System.in); 10 | 11 | int test = sc.nextInt(); 12 | while(test-->0) 13 | { 14 | int n = sc.nextInt(); 15 | int[] array = new int[n]; 16 | int[] array2 = new int[n]; 17 | for(int i = 0 ; i < n ; ++i) 18 | { 19 | array[i]=sc.nextInt(); 20 | array2[i]=sc.nextInt(); 21 | } 22 | int r1=0,r2=0; 23 | int index =0; 24 | for(int i = 0 ; ir1) 27 | { 28 | r1 = array[i]; 29 | index =i+1; 30 | } 31 | else if(array2[i]>r2)r2 =array2[i]; 32 | } 33 | 34 | if(r20) 13 | { 14 | int i = sc.nextInt(); 15 | String word = sc.next(); 16 | word = new StringBuilder(word).deleteCharAt(i-1).toString(); 17 | System.out.println(c+" "+word); 18 | c++; 19 | } 20 | 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /Spoj/SPOJ_5676.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Collections; 4 | import java.util.LinkedList; 5 | import java.util.Scanner; 6 | 7 | // 5676. STONE GAME Spoj 8 | 9 | public class SPOJ_5676 { 10 | 11 | public static void main(String[] args) 12 | { 13 | Scanner sc = new Scanner(System.in); 14 | 15 | 16 | int test = sc.nextInt();int num_pile,num; 17 | while(test-->0) 18 | { 19 | num=sc.nextInt(); 20 | for(int i = 1 ; i <=num;i++) 21 | { 22 | num_pile=sc.nextInt(); 23 | if(num_pile==i) 24 | { 25 | System.out.println("ALICE");break; 26 | } 27 | } 28 | 29 | 30 | } 31 | 32 | 33 | 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /Spoj/SPOJ_8215.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | 4 | public class SPOJ_8215 { 5 | public static void main(String[] args) throws java.io.IOException { 6 | 7 | java.io.BufferedReader br = new java.io.BufferedReader(new java.io.InputStreamReader(System.in)); 8 | java.util.Scanner sc = new java.util.Scanner(System.in); 9 | String word; 10 | int test = sc.nextInt(); 11 | char[] e; 12 | while(test-->0) 13 | { 14 | word = sc.next(); 15 | 16 | 17 | java.util.Sets = new java.util.HashSet(); 18 | for(int i = 0 ; i0) 15 | { 16 | int n =sc.nextInt(); 17 | int[]array = new int[n]; 18 | for(int i = 0 ; i set = new HashSet(); 19 | for(int i = 0 ; i < S.length();++i) 20 | if(set.add(S.charAt(i))) 21 | res +=S.charAt(i); 22 | 23 | 24 | return res; 25 | 26 | } 27 | 28 | 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TC2014_450_1C.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.ArrayList; 5 | import java.util.HashSet; 6 | import java.util.List; 7 | 8 | public class TC2014_450_1C { 9 | public static void main(String[] args) throws IOException, Exception { 10 | 11 | String q = "942493741554318791"; 12 | long[] array =counts(2,Long.valueOf(q)); 13 | for(Long j : array)System.out.print(j+" "); 14 | 15 | } 16 | 17 | 18 | static long[] counts(long A, long B) 19 | { 20 | long[]array = new long[3]; 21 | 22 | 23 | array[2]=(B/15)-(A-1)/15;//fizz & buzz 24 | array[1]=(B/5)-(A-1)/5-array[2];//buzz 25 | array[0]=(B/3)-(A-1)/3-array[2];//fizz 26 | return array; 27 | } 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TCHC_15.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.Arrays; 5 | import java.util.Collections; 6 | import java.util.StringTokenizer; 7 | import java.util.Vector; 8 | 9 | public class TCHC_15 { 10 | public static void main(String[] args) throws IOException { 11 | 12 | System.out.println(getLeast("1 2 3 4",2)); 13 | 14 | } 15 | 16 | static int getLeast(String line, int givenNumber) 17 | { 18 | StringTokenizer st = new StringTokenizer(line); 19 | 20 | int[] array = new int[st.countTokens()]; 21 | 22 | for(int i = 0; i givenNumber)return array[i]; 26 | 27 | return -1; 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TCHS07_Alpha_Round1_Div1_250.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCHS07_Alpha_Round1_Div1_250 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | 9 | System.out.println( 10 | numberToTakeOut("t k o h z s v r i c e d n f a m u w p g j q x y l","f")); 11 | 12 | 13 | } 14 | 15 | static int numberToTakeOut(String diskNames, String searchingDisk) 16 | { 17 | String[] split = diskNames.split(" "); 18 | int count=split.length-1, res=0; 19 | while(!split[count].equals(searchingDisk)){count--;res++;} 20 | 21 | 22 | return res; 23 | 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /TopCoder/TCHS07_Alpha_Round2_Div1_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCHS07_Alpha_Round2_Div1_500 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(toDigits("--**---**---**---*******--****--***-**")); 8 | 9 | 10 | } 11 | static String toDigits(String raw) 12 | { 13 | String[] split = raw.replaceAll("[*]+"," ").trim().split(" "); 14 | String res =""; 15 | if(split.length==7) 16 | { 17 | res = ""+split[0].length()%10+split[1].length()%10+split[2].length()%10+"-"+ 18 | split[3].length()%10+split[4].length()%10+"-"+split[5].length()%10+split[6].length()%10; 19 | } 20 | else 21 | { 22 | res ="+"; 23 | for(String j : split)res +=j.length()%10; 24 | } 25 | 26 | return res; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TCHS07_SemiFinals_DIV1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | 5 | public class TCHS07_SemiFinals_DIV1 { 6 | 7 | public static void main(String[] args) { 8 | 9 | 10 | System.out.println(sort(123456789)); 11 | 12 | 13 | 14 | } 15 | static int sort(int x) 16 | { 17 | char[] ch = String.valueOf(x).toCharArray(); 18 | Arrays.sort(ch); 19 | String res = new StringBuilder(new String(ch)).reverse().toString(); 20 | 21 | return Integer.parseInt(res); 22 | } 23 | 24 | 25 | } 26 | -------------------------------------------------------------------------------- /TopCoder/TCHS_27_Round1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.*; 4 | 5 | public class TCHS_27_Round1 { 6 | 7 | public static void main(String[] args) { 8 | 9 | 10 | String[] res = createPattern( 11 | 12 | "P=NP?"); 13 | for(String j : res)System.out.println(j); 14 | 15 | 16 | } 17 | static String[] createPattern(String message) 18 | { 19 | Listlist = new ArrayList(); 20 | list.add("x.......x"); 21 | 22 | for(char ch : message.toCharArray()) 23 | { 24 | String res =Integer.toBinaryString((int)(ch)).replace("1", "x").replace("0", "."); 25 | if(res.length()<7)res ="."+res; 26 | list.add("x"+res+"x"); 27 | } 28 | 29 | list.add("x.......x"); 30 | return list.toArray(new String[0]); 31 | 32 | 33 | 34 | } 35 | 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /TopCoder/TCHS_Delta_Round3_Div1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Set; 4 | 5 | public class TCHS_Delta_Round3_Div1{ 6 | 7 | public static void main(String[] args) { 8 | 9 | 10 | 11 | } 12 | static int numberOfRejections(int[] requests) 13 | { 14 | Setset = new HashSet(); 15 | int count =0; 16 | for(Integer i : requests) 17 | { 18 | if(set.contains(i))count++; 19 | else 20 | set.add(i); 21 | } 22 | 23 | return count; 24 | 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /TopCoder/TCHS_SRM40_Round1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.*; 3 | public class TCHS_SRM40_Round1 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(wrongOrdering(new String[]{"ACCOUNTING" 8 | ,"MARKETING" 9 | ,"PERSONNEL" 10 | ,"FINANCE" 11 | ,"SALES" 12 | ,"ADMINISTRATION" 13 | ,"IT" 14 | ,"MANAGEMENT" 15 | ,"OPERATIONS" 16 | ,"LEGAL" 17 | ,"PURCHASING" 18 | ,"LOGISTICS" 19 | ,"TRAINING" 20 | ,"TECHNICAL"})); 21 | 22 | } 23 | static String wrongOrdering(String[] files) 24 | { 25 | TreeMapmap = new TreeMap(); 26 | 27 | for(String word : files)map.put(new StringBuilder(word).reverse().toString(), word); 28 | 29 | return map.firstEntry().getValue(); 30 | 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TCHS_SRM41_DIV1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCHS_SRM41_DIV1 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(findMajorityElement(new int[]{249, 326, 564})); 8 | 9 | 10 | } 11 | static int findMajorityElement(int[] a) 12 | { 13 | int half = a.length>>1, maxOcc=-1,elem=0,n = a.length; 14 | int[] occ = new int[1001]; 15 | 16 | for(int i = 0 ; i maxOcc){maxOcc = occ[a[i]];elem=a[i];} 20 | 21 | 22 | } 23 | 24 | 25 | return (maxOcc > half ? elem : -1); 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TCHS_SRM48_DIV1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCHS_SRM48_DIV1 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | 9 | System.out.println(howMany(new String[]{"NYY", 10 | "NNY", 11 | "NNN"})); 12 | 13 | 14 | } 15 | static int howMany(String[] friends) 16 | { 17 | 18 | int count =0,n=friends.length; 19 | 20 | for(int i = 0; i < n;++i) 21 | { 22 | for(int j = 0 ; j list = new ArrayList(); 22 | for(String day : friends) 23 | { 24 | sub = day.substring(day.indexOf(' ')+1); 25 | if(sub.equals(today))list.add(day.substring(0,day.indexOf(' '))); 26 | 27 | } 28 | 29 | return list.toArray(new String[0]); 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TCHS_SRM_38_DIV1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCHS_SRM_38_DIV1 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | 9 | 10 | 11 | } 12 | public String isJoshString(String s) 13 | { 14 | int sum = 0; 15 | for(int i=0;i list = new ArrayList<>(); 9 | for (int i = 0; i < spell.length(); ++i) 10 | if (spell.charAt(i) == 'A' || spell.charAt(i) == 'Z') list.add(spell.charAt(i)); 11 | 12 | Collections.reverse(list); 13 | char[] ch = spell.toCharArray(); 14 | for (int i = 0, j = 0; i < ch.length; ++i) 15 | if (ch[i] == 'A' || ch[i] == 'Z') ch[i] = list.get(j++); 16 | 17 | return new String(ch); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /TopCoder/TCHS_ٍSRM_38_DIV1_500.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waledsaleh/Competitive-Programming/1bc30ef4c6508604dd8ac22b6eeaa53f71479b84/TopCoder/TCHS_ٍSRM_38_DIV1_500.java -------------------------------------------------------------------------------- /TopCoder/TCO19_SRM_748.java: -------------------------------------------------------------------------------- 1 | package com.think; 2 | 3 | public class TCO19_SRM_748 { 4 | public int[] copy(int[] friendsHomework) { 5 | return new int[]{friendsHomework[0] - 1, friendsHomework[1] - 1, friendsHomework[2] - 1, friendsHomework[3] - 1, friendsHomework[4] + 4}; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /TopCoder/TCO19_SRM_753.java: -------------------------------------------------------------------------------- 1 | package com.think; 2 | 3 | public class TCO19_SRM_753 { 4 | 5 | 6 | public int howLong(String text) { 7 | int sum = 0, diff; 8 | 9 | for (char ch : text.toCharArray()) { 10 | diff = (ch - 'a' + 1); 11 | sum += diff + (diff - 1); 12 | } 13 | 14 | return sum; 15 | 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /TopCoder/TCO_1B_2014_200.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Arrays; 7 | import java.util.Scanner; 8 | import java.util.Vector; 9 | 10 | public class TCO_1B_2014_200 { 11 | public static void main (String[] args) throws IOException { 12 | 13 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 14 | Scanner sc = new Scanner(System.in); 15 | 16 | 17 | 18 | } 19 | public static String spamCheck(String judgeLog, int good, int bad) 20 | { 21 | int goal=0; 22 | for(int i = 0 ; i < judgeLog.length();++i) 23 | { 24 | 25 | if(judgeLog.charAt(i)=='o')goal +=good; 26 | else if(judgeLog.charAt(i)=='x')goal -=bad; 27 | if(goal<0)return "SPAM"; 28 | 29 | } 30 | return "NOT SPAM"; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TCO_2003_Q_Round2.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TCO_2003_Q_Round2 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | int[]r = getFreqs(new String[]{ "Be sure to ignore case", "and non-letter characters"}); 9 | 10 | for(int j : r)System.out.println(j); 11 | 12 | } 13 | static int[] getFreqs(String[] doc) 14 | { 15 | int[] resFreq = new int[26]; 16 | 17 | for(String word : doc) 18 | { 19 | String pieceWord=word.toLowerCase(); 20 | for(char ch : pieceWord.toCharArray())if(Character.isLetter(ch))resFreq[ch-'a']++; 21 | 22 | } 23 | 24 | 25 | return resFreq; 26 | 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TCO_2005_Div1_250.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.*; 3 | import java.math.*; 4 | public class TCO_2005_Div1_250 { 5 | 6 | public static void main(String[] args) { 7 | 8 | System.out.println(add("1+2+3", new String[]{})); 9 | 10 | 11 | 12 | } 13 | static int add (String eq, String[] vars) 14 | { 15 | HashMap hash= new HashMap(); 16 | for(String word : vars)hash.put(word.substring(0,word.indexOf(' ')), Integer.parseInt(word.substring(word.indexOf(' ')+1))); 17 | 18 | int sum =0; 19 | String[] split = eq.split("\\+"); 20 | for(String sWords : split) 21 | { 22 | sum +=(Character.isDigit(sWords.charAt(0))? Integer.parseInt(sWords): hash.get(sWords)); 23 | 24 | 25 | } 26 | return sum; 27 | 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TCO_2016_Round_1C_Div1.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.*; 3 | public class TCO_2016_Round_1C_Div1 { 4 | 5 | public static void main(String[] args) { 6 | 7 | Scanner in = new Scanner(System.in); 8 | 9 | System.out.println(isSumFullSet(new int[]{-1,0,1})); 10 | 11 | } 12 | static String isSumFullSet(int[] elements){ 13 | 14 | if(elements.length==1)return "closed"; 15 | Arrays.sort(elements); 16 | 17 | for(int i=0;i=0)return ind+1; 28 | 29 | return -1; 30 | 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TC_166.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_166 { 4 | 5 | public static void main(String[] args) { 6 | // TODO Auto-generated method stub 7 | 8 | 9 | System.out.println(pictureFrames(new int[]{1,2,3,4,5})); 10 | 11 | } 12 | 13 | static int pictureFrames(int[] pieces) 14 | { 15 | int count =0; 16 | if(pieces.length==1||pieces.length==2)return 0; 17 | 18 | for(int i = 0 ; i < pieces.length-2;++i) 19 | { 20 | for(int j =i+1 ; j < pieces.length-1;++j) 21 | { 22 | 23 | for(int k = j+1 ; k < pieces.length;++k) 24 | { 25 | if(pieces[i]+pieces[j]>pieces[k] && pieces[i]+pieces[k]>pieces[j]&& 26 | pieces[k]+pieces[j]>pieces[i]) 27 | { 28 | count++; 29 | } 30 | } 31 | } 32 | 33 | } 34 | 35 | return count; 36 | 37 | } 38 | 39 | 40 | } 41 | -------------------------------------------------------------------------------- /TopCoder/TC_174.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.*; 3 | 4 | public class TC_174 { 5 | 6 | public static void main(String[] args) { 7 | 8 | Scanner sc = new Scanner(System.in); 9 | 10 | } 11 | 12 | static int countWords(String[] board, int size) { 13 | 14 | int count = 0; 15 | for(String i : board) 16 | for(String j : i.split("X"))if(j.length()==size)count++; 17 | 18 | return count; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /TopCoder/TC_187_DIV1_300.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_187_DIV1_300 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(lastCyberword( 9 | 10 | "@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@")); 11 | 12 | 13 | } 14 | static String lastCyberword(String cyberline) 15 | { 16 | 17 | cyberline = cyberline.replace("-", "").replaceAll("[^a-zA-Z0-9@]", " "); 18 | 19 | String[] split =cyberline.split(" "); 20 | 21 | return split[split.length-1]; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /TopCoder/TC_199.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_199 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(times("Bow",-5)); 8 | 9 | } 10 | 11 | static String times(String sFactor, int iFactor) 12 | { 13 | if(iFactor==0||sFactor.equals(""))return ""; 14 | 15 | if(iFactor>0)return str(sFactor,iFactor); 16 | 17 | return new StringBuilder(str(sFactor,iFactor)).reverse().toString(); 18 | 19 | } 20 | public static String str(String s , int k) 21 | { 22 | String res=""; 23 | for(int i = 0 ; i < Math.abs(k);++i)res +=s; 24 | return res; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /TopCoder/TC_201_Math.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_201_Math { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(number(0, Long.parseLong("25"), Long.parseLong("24"))); 8 | 9 | 10 | 11 | } 12 | static long number ( long min , long max , long factor ) 13 | { 14 | while(min % factor !=0)min++; 15 | if(min > max)return 0; 16 | 17 | return (max-min) /factor +1; 18 | } 19 | 20 | 21 | } 22 | -------------------------------------------------------------------------------- /TopCoder/TC_206.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class TC_206 { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc= new Scanner(System.in); 10 | 11 | System.out.println(minBits(1000000)); 12 | 13 | } 14 | static int minBits( int n ) 15 | { 16 | int pow =0; 17 | while(n>0) 18 | { 19 | n=n>>1; 20 | pow++; 21 | } 22 | return pow; 23 | 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /TopCoder/TC_214.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_214 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(expand( 8 | 9 | " _ _ __ _ yabba dabba _ * dooooo * ****")); 10 | 11 | 12 | 13 | } 14 | static String expand(String text) 15 | { 16 | boolean c =false,b=false; 17 | 18 | String res = ""; 19 | for(int i = 0 ; i < text.length();++i) 20 | { 21 | if(text.charAt(i)=='_') 22 | { 23 | res +=(!c)?"" : ""; 24 | c =!c; 25 | } 26 | else if(text.charAt(i)=='*') 27 | { 28 | res +=(!b)?"" : ""; 29 | b =!b; 30 | } 31 | else 32 | res +=text.charAt(i); 33 | 34 | } 35 | return res; 36 | 37 | } 38 | 39 | 40 | } 41 | -------------------------------------------------------------------------------- /TopCoder/TC_216.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_216 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(translate("ZEE ZEE ZE" 8 | 9 | )); 10 | 11 | } 12 | 13 | static String translate(String text) { 14 | 15 | StringBuilder res = new StringBuilder(""), innerChar = new StringBuilder(""); 16 | 17 | for (int i = 0; i < text.length(); ++i) { 18 | 19 | if (text.charAt(i) == ' ') { 20 | 21 | res.append(innerChar.toString().trim().equals("ZEE") ? "ZED" : innerChar); 22 | res.append(" "); 23 | 24 | innerChar = new StringBuilder(""); 25 | } else 26 | innerChar.append(text.charAt(i)); 27 | 28 | } 29 | 30 | res.append(innerChar.toString().trim().equals("ZEE") ? "ZED" : innerChar); 31 | 32 | return res.toString(); 33 | 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /TopCoder/TC_218.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | import java.util.regex.Pattern; 8 | 9 | public class TC_218 { 10 | 11 | public static void main (String [] args) throws IOException { 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | Scanner sc = new Scanner(System.in); 14 | 15 | 16 | 17 | 18 | } 19 | 20 | public static String canAccess(int[] rights, int minPermission) 21 | { 22 | String res = ""; 23 | for(int i = 0 ; i < rights.length;++i) 24 | { 25 | if(rights[i]res)hi = mid; 29 | else 30 | lo = mid; 31 | 32 | 33 | } 34 | return (lo+hi)/2.0; 35 | 36 | 37 | 38 | 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /TopCoder/TC_234.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_234{ 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(howLong( 8 | 9 | "AAABBBBAA")); 10 | 11 | 12 | } 13 | static int howLong(String moves) 14 | { 15 | int max = 0; 16 | int counta =1; 17 | for(int i=1; i < moves.length();++i) 18 | { 19 | if(moves.charAt(i)==moves.charAt(i-1)) counta++; 20 | else 21 | { 22 | max = Math.max(max, counta); 23 | counta =1; 24 | } 25 | 26 | } 27 | max = Math.max(max, counta); 28 | 29 | return max; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /TopCoder/TC_236_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.*; 4 | 5 | public class TC_236_500 { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | 12 | 13 | } 14 | static String getTask(String[] list, int n) { 15 | 16 | Vectorv = new Vector(Arrays.asList(list)); 17 | 18 | int r=0,p=0; 19 | while(v.size()>1) 20 | { 21 | r = (p+n-1)%v.size(); 22 | v.remove(r); 23 | p = r%v.size(); 24 | } 25 | 26 | return v.get(0); 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TC_238_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_238_500 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(getOutput(new String[] 9 | 10 | {"A"}, new String[]{"0 1"} )); 11 | 12 | 13 | 14 | } 15 | static String getOutput(String[] threads, String[] slices) 16 | { 17 | String res =""; 18 | int c =0; 19 | int[] keep = new int [threads.length]; 20 | for(int i = 0; i 0;i-=2)res +=(strengths[i]-strengths[i-1]); 21 | 22 | if((strengths.length&1)!=0)res +=strengths[0]; 23 | 24 | return res; 25 | 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_244_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.LinkedList; 4 | import java.util.Queue; 5 | import java.util.Scanner; 6 | 7 | public class TC_244_500 { 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | 14 | } 15 | static int phone(String phone) 16 | { 17 | String pad = "123456789*0#"; 18 | int res =0; 19 | int x =1,y=1; 20 | for(int i = 0 ; i < phone.length();++i) 21 | { 22 | int index = phone.indexOf(phone.charAt(i)); 23 | int row = index/3; 24 | int col =index % 3; 25 | res +=Math.abs(x-row)+Math.abs(y-col); 26 | x =row; 27 | y = col; 28 | } 29 | return res; 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TC_246.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_246 { 4 | 5 | public static void main(String[] args) { 6 | 7 | String[]s=uniform(new String[] 8 | 9 | {"263C45233 ", " 2364A56", "B273664"}); 10 | 11 | for(String k : s)System.out.print(k+" "); 12 | 13 | } 14 | static String[] uniform(String[] numbers) 15 | { 16 | String[] s = new String[numbers.length]; 17 | for(int i = 0; i m1 =Arrays.asList(new String[]{"black","brown","red","orange","yellow","green", 26 | "blue","violet","grey","white"}) ; 27 | 28 | long res = 1; 29 | res = (m1.indexOf(code[0])*10L+m1.indexOf(code[1]))*(long)Math.pow(10, m1.indexOf(code[2])); 30 | 31 | return res; 32 | 33 | } 34 | 35 | 36 | } 37 | 38 | -------------------------------------------------------------------------------- /TopCoder/TC_255.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.Arrays; 5 | import java.util.Scanner; 6 | 7 | public class TC_255 { 8 | 9 | public static void main(String[] args) throws IOException { 10 | 11 | 12 | 13 | 14 | } 15 | 16 | static String[] rearrange(String[] sequence) 17 | { 18 | int[] array = new int [sequence.length]; 19 | for(int i = 0 ; i < array.length;++i)array[i]=Integer.parseInt(sequence[i]); 20 | 21 | Arrays.sort(array); 22 | String[]res = new String[array.length]; 23 | for(int i = 0 ; i < array.length;++i)res[i]=""+array[i]; 24 | 25 | return res; 26 | } 27 | 28 | 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TC_265.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_265 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(getPixelWidth("Dead Beef", new int[]{6,6,6,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9}, 8 | new int[]{5,5,5,4,4,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9})); 9 | 10 | } 11 | static int getPixelWidth(String sentence, int[] uppercase, int[] lowercase) 12 | { 13 | 14 | int res =0; 15 | for(int i = 0; i < sentence.length();++i) 16 | { 17 | if(sentence.charAt(i)>='a'&&sentence.charAt(i)<='z')res +=lowercase[sentence.charAt(i)-'a']; 18 | else if(sentence.charAt(i)>='A'&&sentence.charAt(i)<='Z')res +=uppercase[sentence.charAt(i)-'A']; 19 | else 20 | res +=3; 21 | 22 | } 23 | res +=1*(sentence.length()-1); 24 | 25 | return res; 26 | 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TC_273.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.math.BigInteger; 4 | import java.util.ArrayList; 5 | import java.util.Arrays; 6 | 7 | public class TC_273 { 8 | 9 | public static void main(String[] args) { 10 | 11 | System.out.println(need(new int[]{9,9,10,10})); 12 | 13 | } 14 | static int need(int[] marks) { 15 | 16 | int res = 0; 17 | for(int i = 0; i < marks.length;++i)res +=(10-marks[i])*2-1; 18 | 19 | return Math.max(res, 0); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /TopCoder/TC_279.java: -------------------------------------------------------------------------------- 1 | public class TC_279 { 2 | public String makeDancing(String sentence) { 3 | StringBuilder result = new StringBuilder(); 4 | boolean isUpper = false; 5 | for (int i = 0; i < sentence.length(); ++i) { 6 | char ch = sentence.charAt(i); 7 | if (Character.isAlphabetic(ch)) { 8 | ch = !isUpper ? Character.toUpperCase(ch) : Character.toLowerCase(ch); 9 | isUpper = !isUpper; 10 | } 11 | result.append(ch); 12 | } 13 | 14 | return result.toString(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /TopCoder/TC_280.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.Scanner; 5 | 6 | public class TC_280 7 | { 8 | 9 | 10 | public static void main(String[] args) { 11 | Scanner sc = new Scanner(System.in); 12 | 13 | System.out.println(count(10000)); 14 | 15 | 16 | 17 | } 18 | static int count(int n) 19 | { 20 | 21 | int count =0; 22 | for(int i = 1 ;iavg)? letters.charAt(i):""; 30 | } 31 | return res; 32 | } 33 | 34 | 35 | } 36 | -------------------------------------------------------------------------------- /TopCoder/TC_298_500_FiboPos.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class TC_298_500_FiboPos { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | System.out.println(fibIndex(13)); 12 | 13 | } 14 | 15 | static double fibIndex(long n) 16 | { 17 | int a=1,b=2,i=2; //a and b are cosecutive fibonacci numbers, i is the index of a 18 | while(n>b) { //n is outside [a,b] interval 19 | b=b+a; // a little trick to get next pair of fibonacci's without aux variable 20 | a=b-a; // since b here equals oldB+oldA, a = b-a = oldB+oldA-oldA = oldB 21 | i++; 22 | } 23 | return ((double)i)+((double)(n-a))/((double)(b-a)); 24 | } 25 | 26 | 27 | 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_304_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.Vector; 5 | 6 | public class TC_304_500 { 7 | public static void main(String[] args) throws IOException { 8 | 9 | 10 | System.out.println(difference(2,new double[]{3,8,9,15})); 11 | 12 | } 13 | 14 | static double difference(int k, double[] data) 15 | { 16 | double min =Double.MAX_VALUE; 17 | double max = 0.0; 18 | 19 | for(int i = 0 ; i < data.length-k+1;++i) 20 | { 21 | 22 | double sum =0.0; 23 | for(int j = 0 ;j> 1]; 18 | 19 | } 20 | return -1; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /TopCoder/TC_312.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.*; 3 | import java.math.*; 4 | 5 | public class TC_312 { 6 | 7 | public static void main(String[] args) { 8 | 9 | 10 | System.out.println(nameThisNumber(10)); 11 | 12 | 13 | } 14 | static String nameThisNumber(int x) 15 | { 16 | String[] all={"unu", "du", "tri", "kvar", "kvin", "ses", "sep", "ok", "nau", "dek"}; 17 | String num = ""+x; 18 | if(x <= 10)return all[x-1]; 19 | if(x<=20)return "dek"+" "+all[(num.charAt(1)-'0')-1]; 20 | if(x%10==0)return all[(num.charAt(0)-'0')-1]+"dek"; 21 | 22 | return all[(num.charAt(0)-'0')-1]+"dek "+""+all[(num.charAt(1)-'0')-1]; 23 | 24 | } 25 | 26 | 27 | 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_320.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | import java.util.Arrays; 5 | import java.util.Vector; 6 | 7 | public class TC_320 { 8 | 9 | 10 | public static void main(String[] args) throws IOException { 11 | 12 | 13 | 14 | System.out.println(average( 15 | 16 | "ab")); 17 | 18 | } 19 | static double average(String s) 20 | { 21 | String str = s.charAt(0)+""; 22 | 23 | int count =0; 24 | 25 | for(int i =1 ; i 9) 17 | { 18 | while(n!=0) 19 | { 20 | rem = n%10; 21 | prod *=rem; 22 | n /=10; 23 | 24 | } 25 | count++; 26 | n=prod; 27 | prod =1; 28 | } 29 | return count; 30 | 31 | } 32 | 33 | 34 | 35 | } 36 | -------------------------------------------------------------------------------- /TopCoder/TC_346.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_346 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(countDiamonds("><<><>>><")); 8 | 9 | } 10 | static int countDiamonds(String mine) 11 | { 12 | 13 | int count =0; 14 | while(mine.contains("<>")) 15 | { 16 | mine = mine.replaceFirst("<>",""); 17 | count++; 18 | 19 | 20 | } 21 | return count; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /TopCoder/TC_349.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.regex.*;; 4 | 5 | public class TC_349 { 6 | 7 | public static void main(String[] args) { 8 | 9 | 10 | System.out.println(nonIntersecting( 11 | 12 | new String[] 13 | 14 | {"ababababa"}, "aba")); 15 | 16 | 17 | } 18 | static int nonIntersecting(String[] doc, String search) 19 | { 20 | String str =""; 21 | for(String j : doc)str +=j; 22 | 23 | int count =0; 24 | 25 | int pos; 26 | while((pos=str.indexOf(search))!=-1) 27 | { 28 | str = str.substring(pos+search.length()); 29 | count++; 30 | } 31 | 32 | return count; 33 | } 34 | 35 | 36 | 37 | 38 | 39 | } 40 | -------------------------------------------------------------------------------- /TopCoder/TC_367.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class TC_367 { 9 | public static void main(String[] args) throws IOException { 10 | 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | 15 | 16 | 17 | } 18 | public static int countOccupied(String[] s) 19 | { 20 | int count =0; 21 | for(int i = 0 ; i v = new Vector(); 23 | int sum =0; 24 | for(int i = 1 ; i <=P;++i) 25 | { 26 | for(int j = 1 ; j <=P;++j) 27 | { 28 | int div = j*X+i*Y; 29 | if(div % P==0) 30 | { 31 | sum =i+j; 32 | v.add(sum); 33 | } 34 | } 35 | } 36 | int min = Integer.MAX_VALUE; 37 | for(Integer j : v)min = Math.min(min,j); 38 | 39 | return min; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /TopCoder/TC_375.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | 5 | public class TC_375 { 6 | 7 | 8 | public static void main(String[] args) throws IOException { 9 | 10 | System.out.println(getDensity(new String[]{"200 ml of oil, weighing 180 g"})); 11 | 12 | 13 | 14 | } 15 | static double getDensity(String[] ingredients) 16 | { 17 | int vol =0; 18 | int mass=0; 19 | 20 | for(int i = 0 ; i < ingredients.length;++i) 21 | { 22 | String[] split = ingredients[i].split(" "); 23 | 24 | vol +=Integer.parseInt(split[0]); 25 | 26 | mass +=Integer.parseInt(split[split.length-2]); 27 | 28 | } 29 | return (double)mass/vol; 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /TopCoder/TC_376.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.StringTokenizer; 7 | 8 | public class TC_376{ 9 | 10 | public static void main(String[] args) throws IOException { 11 | 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | 14 | System.out.println(clearExcess("!!!!!!!!!!!!!!!!?")); 15 | 16 | 17 | } 18 | static String clearExcess(String document) 19 | { 20 | int n = document.length(); 21 | for(int i =0; i votes[i])break; 21 | 22 | votes[0]++; 23 | --votes[i]; 24 | count++; 25 | 26 | } 27 | 28 | 29 | return count; 30 | 31 | } 32 | public static int index (int[] array) 33 | { 34 | int index =0; 35 | int max =0; 36 | for(int i = 1 ; i max) 39 | { 40 | max = array[i]; 41 | index = i; 42 | } 43 | } 44 | return index; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /TopCoder/TC_395.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Vector; 4 | 5 | public class TC_395 { 6 | 7 | public static void main(String[] args) { 8 | 9 | System.out.println(getNumber(123)); 10 | 11 | 12 | } 13 | static int getNumber(int n) 14 | { 15 | Vectorv = new Vector(); 16 | // Pre-computing 17 | for(int i = 0; i <100001;++i) 18 | { 19 | 20 | if(String.valueOf(i).contains("2")||String.valueOf(i).contains("3")|| 21 | String.valueOf(i).contains("5")||String.valueOf(i).contains("6") 22 | ||String.valueOf(i).contains("7")||String.valueOf(i).contains("8"))continue; 23 | else 24 | v.add(i); 25 | 26 | } 27 | //get answer in o(1) 28 | return v.elementAt(n); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TC_408.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.IOException; 4 | 5 | public class TC_408 { 6 | 7 | public static void main(String[] args) throws IOException { 8 | 9 | 10 | System.out.println(getPoints(new int[]{8, 16, 32},new int[]{10, 10, 5})); 11 | 12 | 13 | } 14 | static int getPoints(int[] rawScores, int[] conversionFactor) 15 | { 16 | double sum =0.0; 17 | 18 | for(int i = 0 ; i < rawScores.length;++i) 19 | { 20 | sum +=(double)rawScores[i]/conversionFactor[i]; 21 | sum = Math.round(sum); 22 | 23 | } 24 | System.out.println(Math.round(sum)); 25 | return (int)sum; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /TopCoder/TC_408_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | 5 | public class TC_408_500 { 6 | 7 | public static void main(String[] args) { 8 | 9 | System.out.println(numberOfNights(new int[]{2,2,2,4})); 10 | 11 | 12 | } 13 | 14 | static int numberOfNights(int[] candles) 15 | { 16 | int ret = 1; 17 | int N = candles.length; 18 | while(true) 19 | { 20 | Arrays.sort(candles); 21 | for(int i=0; i < ret; i++) 22 | { 23 | if(N-1-i < 0 || candles[N-1-i]==0) 24 | return ret-1; 25 | 26 | else 27 | candles[N-1-i]--; 28 | 29 | } 30 | 31 | ret++; 32 | 33 | } 34 | 35 | } 36 | 37 | 38 | 39 | } 40 | -------------------------------------------------------------------------------- /TopCoder/TC_420.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class TC_420 { 9 | public static void main (String [] args) throws IOException { 10 | 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | int[] a = {0,1,0,0,4,0,6,7}; 15 | System.out.println(rearrange("RBRRBRBB",a)); 16 | 17 | } 18 | 19 | public static String rearrange(String deck, int[] above) 20 | { 21 | StringBuilder sb = new StringBuilder(""); 22 | String res = ""; 23 | for(int i = 0 ; i < above.length;++i) 24 | { 25 | sb.insert(above[i], deck.charAt(i)); 26 | 27 | } 28 | return sb.toString(); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /TopCoder/TC_446.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | import java.util.Scanner; 3 | 4 | public class TC_446 { 5 | 6 | public static void main(String[] args) { 7 | Scanner sc = new Scanner(System.in); 8 | 9 | System.out.println(count(10000000, 2, 3)); 10 | 11 | } 12 | 13 | static int count(int n, int lowerBound, int upperBound) { 14 | 15 | int count = 0; 16 | for (int i = 1; i <= n; ++i) { 17 | 18 | int len = (int) Math.log10(i) + 1; 19 | if (len >= lowerBound && len <= upperBound)++count; 20 | 21 | 22 | } 23 | return count; 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /TopCoder/TC_449_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_449_500 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(findSum(999999999)); 9 | 10 | 11 | } 12 | // if n is even , so f(n-1/2) 13 | static long findSum(int N) 14 | { 15 | if(N==0) return 0; 16 | return (long)((N+1)>>1)*((N+1)>>1)+findSum((int)N>>1); 17 | 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /TopCoder/TC_452.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_452 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(minCartons(10)); 9 | 10 | 11 | 12 | } 13 | 14 | 15 | static int minCartons(int n) { 16 | 17 | int res = Integer.MAX_VALUE,total =0; 18 | 19 | for(int i = 0 ; i <= n ; ++i ) { 20 | for(int j = 0 ; j <= n; ++j){ 21 | 22 | total = i * 6 + j * 8; 23 | if(total == n) res = Math.min(res, i + j); 24 | 25 | } 26 | } 27 | 28 | return res == Integer.MAX_VALUE ? -1 : res; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TC_453_5.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.HashSet; 7 | import java.util.Set; 8 | 9 | public class TC_453_5 { 10 | 11 | public static void main(String[] args) throws IOException { 12 | 13 | 14 | 15 | 16 | } 17 | static int countTools(String[] need) 18 | { 19 | Sets = new HashSet(); 20 | for(int i = 0; i < need.length;++i) 21 | { 22 | String[] str = need[i].split(" "); 23 | for(String j : str) 24 | s.add(j); 25 | 26 | } 27 | return s.size(); 28 | } 29 | 30 | } -------------------------------------------------------------------------------- /TopCoder/TC_456.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_456 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(minRep("apple")); 8 | 9 | 10 | 11 | } 12 | 13 | static int minRep(String word){ 14 | if(word.length() <= 4)return -1; 15 | 16 | word = word.toLowerCase(); 17 | int count =0,i=1; 18 | if(word.charAt(0)!='a')++count; 19 | if(word.charAt(word.length()-2) != 'l')++count; 20 | if(word.charAt(word.length()-1)!='e')++count; 21 | 22 | for(; i < word.length()-2;++i) 23 | if(word.charAt(i)!='p') 24 | ++count; 25 | 26 | 27 | 28 | 29 | 30 | return count ; 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /TopCoder/TC_467_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_467_500 { 4 | 5 | 6 | public static void main(String[] args) { 7 | 8 | int sum =0; 9 | System.out.println(sup(14,14,sum)); 10 | 11 | 12 | 13 | } 14 | public static int sup(int k,int n,int sum) 15 | { 16 | if(k==0) 17 | { 18 | return n; 19 | } 20 | sum =0; 21 | for(int i =1 ; i <=n;++i)sum +=sup(k-1,i,sum); 22 | 23 | return sum; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /TopCoder/TC_480.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_480 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(encrypt(new int[] 8 | 9 | {1000,999,998,997,996,995})); 10 | 11 | } 12 | static long encrypt(int[] numbers) 13 | { 14 | long res =1; 15 | long max =Integer.MIN_VALUE; 16 | for(int i = 0 ; i < numbers.length;++i) 17 | { 18 | int num = numbers[i]; 19 | numbers[i]++; 20 | for(int j = 0 ; j < numbers.length;++j)res *=numbers[j]; 21 | max = Math.max(max, res); 22 | res =1; 23 | numbers[i]=num; 24 | 25 | } 26 | 27 | return max; 28 | 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TC_500_Div2.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.BufferedWriter; 5 | import java.io.IOException; 6 | import java.io.InputStreamReader; 7 | import java.io.OutputStreamWriter; 8 | import java.util.Scanner; 9 | 10 | public class TC_500_Div2 { 11 | 12 | public static void main (String [] args) throws IOException { 13 | 14 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 15 | 16 | 17 | System.out.println(printSmiles(100)); 18 | 19 | } 20 | 21 | 22 | // prime factor for number and make summation 23 | public static int printSmiles(int smiles) 24 | { 25 | int x = 2; 26 | 27 | int res=0; 28 | while(smiles>1) 29 | { 30 | 31 | while(smiles%x!=0) 32 | x++; 33 | 34 | res +=x; 35 | smiles /=x; 36 | 37 | } 38 | return res; 39 | 40 | } 41 | 42 | } 43 | -------------------------------------------------------------------------------- /TopCoder/TC_505.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | import java.io.*; 5 | public class TC_505 { 6 | 7 | public static void main(String[] args) throws IOException { 8 | 9 | Scanner sc= new Scanner(System.in); 10 | BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 11 | 12 | System.out.println(fixCaps("not really. english. qwertyuio. a. xyz.")); 13 | 14 | } 15 | static String fixCaps(String paragraph) 16 | { 17 | boolean check = true; 18 | char[] ch =paragraph.toCharArray(); 19 | for(int i = 0 ; i < ch.length;++i) 20 | { 21 | if(Character.isAlphabetic(ch[i])&&check) 22 | { 23 | ch[i]=Character.toUpperCase(ch[i]); 24 | check =false; 25 | } 26 | if(ch[i]=='.')check =true; 27 | } 28 | String res=""; 29 | for(int i = 0 ; i < ch.length;++i)res +=ch[i]; 30 | 31 | 32 | return res; 33 | 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /TopCoder/TC_506.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Arrays; 7 | import java.util.Scanner; 8 | 9 | public class TC_506 { 10 | public static void main (String[] args) throws IOException { 11 | 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | Scanner sc = new Scanner(System.in); 14 | 15 | 16 | } 17 | 18 | public static int train(int[] attributes) 19 | { 20 | int max = 0; 21 | int count =0; 22 | Arrays.sort(attributes); 23 | max = attributes[attributes.length-1]; 24 | 25 | for(int i = 0 ; i < attributes.length;++i)count +=max-attributes[i]; 26 | 27 | return count; 28 | 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /TopCoder/TC_521_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Stack; 4 | 5 | public class TC_521_500 { 6 | 7 | public static void main(String[] args) { 8 | 9 | System.out.println(countCorrections("())(())((()))))()((())))()())())())()()()")); 10 | 11 | } 12 | static int countCorrections(String par) 13 | { 14 | Stack stack = new Stack(); 15 | Stack stack2 = new Stack(); 16 | for(int i = 0 ; i < par.length();++i) 17 | { 18 | if(par.charAt(i)==' ')continue; 19 | if(par.charAt(i)=='(')stack.push(par.charAt(i)); 20 | if(par.charAt(i)==')')stack2.push(par.charAt(i)); 21 | 22 | if(par.charAt(i)==')'&& !stack.isEmpty()&&!stack2.isEmpty() && stack.peek()=='('&&stack2.peek()==')') 23 | { 24 | stack.pop(); 25 | stack2.pop(); 26 | } 27 | } 28 | 29 | return stack.size()+stack2.size() ; 30 | 31 | } 32 | 33 | 34 | } 35 | -------------------------------------------------------------------------------- /TopCoder/TC_560.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_560 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(minDistance("qwertyuiop", "potter")); 8 | 9 | 10 | } 11 | static int minDistance(String keyboard, String word) 12 | { 13 | int res = 0; 14 | for(int i = 0; i v = new ArrayList(); 20 | 21 | for (int i = 1; i <= n; ++i) 22 | v.add(i + ".mp3"); 23 | Collections.sort(v); 24 | if (n < 50) { 25 | return v.toArray(new String[v.size()]); 26 | } 27 | List v2 = new ArrayList(); 28 | for (int i = 0; i < 50; ++i) 29 | v2.add(v.get(i)); 30 | 31 | return v2.toArray(new String[v2.size()]); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /TopCoder/TC_572.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.math.BigInteger; 4 | import java.util.ArrayList; 5 | import java.util.Arrays; 6 | import java.util.List; 7 | import java.util.Scanner; 8 | 9 | public class TC_572 { 10 | 11 | public static void main(String[] args) { 12 | 13 | Scanner sc = new Scanner(System.in); 14 | 15 | System.out.println(determineSign(new int[] 16 | 17 | {-5, 7, 2})); 18 | } 19 | static String determineSign(int[] A) 20 | { 21 | BigInteger bg = BigInteger.ONE; 22 | for(int i = 0 ; i < A.length;++i)bg =bg.multiply(BigInteger.valueOf(A[i])); 23 | if(bg.compareTo(BigInteger.ZERO)<0)return "NEGATIVE"; 24 | if(bg.compareTo(BigInteger.ZERO)==0)return "ZERO"; 25 | return "POSITIVE"; 26 | 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_575.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_575 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(find(new int[] { 38, 9, 5, 35, 25 })); 8 | 9 | } 10 | 11 | static int find(int[] sequence) { 12 | 13 | int count = 0; 14 | boolean occ = false; 15 | 16 | for (int i = 0; i < sequence.length; ++i) { 17 | 18 | for (int j = i + 1; j < sequence.length; ++j) { 19 | 20 | if (sequence[i] != sequence[j]) { 21 | 22 | ++count; 23 | 24 | } else 25 | occ = true; 26 | 27 | } 28 | 29 | } 30 | 31 | count += occ == true ? 1 : 0; 32 | 33 | return count; 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /TopCoder/TC_577.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_577 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(getLength("ayayayayayaya")); 8 | 9 | 10 | } 11 | static int getLength(String nickname) 12 | { 13 | int count =0; 14 | String res = ""; 15 | 16 | for(int i = 0 ; i < nickname.length();++i) 17 | { 18 | if(nickname.charAt(i)=='e'||nickname.charAt(i)=='i'||nickname.charAt(i)=='o'|| 19 | nickname.charAt(i)=='u'||nickname.charAt(i)=='y'||nickname.charAt(i)=='a') 20 | { 21 | count++; 22 | if(count==1)res +=nickname.charAt(i); 23 | } 24 | else 25 | { 26 | count =0; 27 | res +=nickname.charAt(i); 28 | 29 | } 30 | 31 | } 32 | return res.length(); 33 | 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /TopCoder/TC_598.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.HashSet; 4 | import java.util.LinkedHashSet; 5 | import java.util.Set; 6 | import java.util.Vector; 7 | 8 | public class TC_598 { 9 | 10 | public static void main(String[] args) { 11 | 12 | System.out.println(simulate( 13 | 14 | "eel")); 15 | 16 | } 17 | static String simulate(String s) 18 | { 19 | 20 | StringBuilder sb = new StringBuilder(s); 21 | for(int i=0 ;i < sb.length();++i) 22 | { 23 | for(int j=1; j < sb.length();++j) 24 | { 25 | if(sb.charAt(j)==sb.charAt(j-1)) 26 | { 27 | sb.deleteCharAt(j); 28 | sb.deleteCharAt(j-1); 29 | 30 | j -=2; 31 | if(j<0) 32 | { 33 | j=1; 34 | } 35 | } 36 | } 37 | 38 | } 39 | 40 | return sb.toString(); 41 | 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /TopCoder/TC_603_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.math.BigInteger; 7 | import java.util.Arrays; 8 | import java.util.Scanner; 9 | 10 | public class TC_603_500{ 11 | public static void main (String [] args) throws IOException { 12 | 13 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 14 | Scanner sc = new Scanner(System.in); 15 | 16 | int[] a ={1000000,1000000}; 17 | System.out.println(makepairs(a,-5)); 18 | } 19 | 20 | public static int makepairs(int[] A, int X) 21 | { 22 | int count =0; 23 | Arrays.sort(A); 24 | for(int i = 0 ; i < A.length;i+=2)if((long)A[i]*A[i+1]>=X)count++; 25 | 26 | return count; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_607.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Arrays; 7 | import java.util.Scanner; 8 | 9 | //250 10 | 11 | public class TC_607 { 12 | 13 | 14 | public static void main(String[] args) throws IOException { 15 | 16 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 17 | Scanner sc = new Scanner(System.in); 18 | 19 | 20 | } 21 | 22 | public static int smallestArea(int[] x,int[]y) 23 | { 24 | int count =0; 25 | 26 | Arrays.sort(x); 27 | Arrays.sort(y); 28 | count = (x[x.length-1]-x[0] )*(y[y.length-1]-y[0]); 29 | 30 | return count; 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /TopCoder/TC_610.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | public class TC_610 { 7 | 8 | public static void main(String[] args) { 9 | 10 | System.out.println(CountNumbers(new int[] { 9, 2 } 11 | 12 | )); 13 | 14 | } 15 | 16 | static int CountNumbers(int[] numbers) { 17 | 18 | List resList = new ArrayList<>(); 19 | for (int num : numbers)resList.add(num); 20 | 21 | 22 | for (int i = 0; i < resList.size(); ++i) { 23 | 24 | for (int j = 0; j < resList.size(); ++j) { 25 | 26 | if (resList.get(i) > resList.get(j) && !resList.contains(resList.get(i) / resList.get(j))) { 27 | 28 | resList.add(resList.get(i) / resList.get(j)); 29 | 30 | i = j = 0; 31 | } 32 | 33 | } 34 | 35 | } 36 | 37 | return resList.size(); 38 | 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /TopCoder/TC_612.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.BufferedWriter; 5 | import java.io.IOException; 6 | import java.io.InputStreamReader; 7 | import java.io.OutputStreamWriter; 8 | import java.util.Scanner; 9 | import java.util.Stack; 10 | 11 | public class TC_612 { 12 | 13 | public static void main (String [] args) throws IOException { 14 | 15 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 16 | 17 | 18 | 19 | 20 | } 21 | 22 | public static int count(String S) 23 | { 24 | 25 | if(S.length()==1)return 0; 26 | 27 | int count =0; 28 | 29 | for(int i = 1 ; i 0&&d>0) 18 | { 19 | if(c==a&&d==b)return "Able to generate"; 20 | if(c>d)c-=d; 21 | else 22 | d -=c; 23 | 24 | 25 | 26 | } 27 | return "Not able to generate"; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /TopCoder/TC_624.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.*; 4 | import java.io.*; 5 | import java.text.*; 6 | 7 | public class TC_624 { 8 | 9 | public static void main(String[] args)throws IOException { 10 | 11 | 12 | 13 | 14 | 15 | 16 | } 17 | 18 | 19 | static int minimum(int K, int[] danceCost) 20 | { 21 | int sum =0; 22 | Arrays.sort(danceCost); 23 | for(int i = 0 ; i =4) 25 | { 26 | res++;count=1; 27 | } 28 | else if(sticks[i]==sticks[i-1]) 29 | { 30 | count++; 31 | } 32 | else 33 | count=1; 34 | 35 | } 36 | if(count>=4) 37 | { 38 | res++;count=1; 39 | } 40 | return res; 41 | 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /TopCoder/TC_627_500.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_627_500 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | } 14 | static char getHappyLetter(String letters) 15 | { 16 | int[] array = new int[300]; 17 | for(int i = 0 ; i < letters.length();++i)array[letters.charAt(i)]++; 18 | 19 | int max = 0; 20 | int index =0; 21 | for(int i = 0 ; i < array.length;++i)if(array[i]>max){max = array[i];index =i; } 22 | 23 | 24 | int sum =0; 25 | array[index]=0; 26 | for(int i = 0 ; i < array.length;++i){sum +=array[i];} 27 | 28 | if(sum > 1; 20 | 21 | for(int i = 0 ; i < occ.length;++i)if(occ[i] > half)return "impossible"; 22 | 23 | 24 | 25 | return "possible"; 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /TopCoder/TC_649.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_649 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(check("siero", "sero")); 8 | 9 | } 10 | 11 | static String check(String s, String t) { 12 | 13 | if (s.equals(t)) 14 | return "Impossible"; 15 | 16 | int eraseCheck = 0,j = 0; 17 | 18 | 19 | for (int i = 0; i < s.length();) { 20 | 21 | if (j < t.length() && s.charAt(i) == t.charAt(j) && eraseCheck != 2) { 22 | 23 | ++i; 24 | ++j; 25 | 26 | } 27 | 28 | else { 29 | 30 | if (eraseCheck == 2) 31 | break; 32 | ++eraseCheck; 33 | 34 | ++i; 35 | 36 | } 37 | 38 | } 39 | 40 | return j == t.length() && eraseCheck != 2 ? "Possible" : "Impossible"; 41 | 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /TopCoder/TC_652.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_652 { 4 | 5 | public static void main(String[] args) { 6 | 7 | System.out.println(findValue("babca")); 8 | 9 | 10 | } 11 | static int findValue(String s) 12 | { 13 | int sum =0; 14 | int[]k = new int[27]; 15 | for(int i = 0; i < s.length();++i) 16 | { 17 | if(k[s.charAt(i)-'a'+1]>0)continue; 18 | for(int j = 0 ; j 0) 21 | { 22 | for(int i = 0; i < key.length;++i)ch[key[i]]=message.charAt(i); 23 | 24 | message=new String(ch).toString(); 25 | 26 | } 27 | 28 | return message; 29 | 30 | 31 | 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /TopCoder/TC_681.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_681 { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(countCoins("HTT")); 9 | 10 | 11 | } 12 | static int countCoins(String state) 13 | { 14 | int count=0; 15 | 16 | for(int i =0 ; i 0){ 23 | Arrays.sort(occ); 24 | occ[25]--; 25 | k--; 26 | } 27 | 28 | for(int i=0;i exciteWords = new ArrayList<>(Arrays.asList(words)), 19 | speechWords = new ArrayList<>(Arrays.asList(speech)); 20 | 21 | speechWords.retainAll(exciteWords); 22 | 23 | return speechWords.size(); 24 | 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /TopCoder/TC_723.java: -------------------------------------------------------------------------------- 1 | public class TC_723 { 2 | 3 | public static void main(String args[]){ 4 | 5 | System.out.println(check("buffalo ")); 6 | 7 | 8 | } 9 | static String check(String s) { 10 | 11 | if(s.charAt(0) == ' ' || s.charAt(s.length()-1) == ' ' || s.length() < 7)return "Not good"; 12 | 13 | String split[] = s.split(" "); 14 | 15 | for(int i = 0; i > 1; 19 | 20 | while( S[i] != T && S[i] != 0) S[i] >>= 1; // There exist math formula, but time has finished. So I'll write it later :) 21 | 22 | count += S[i] == T ? 1 : 0; 23 | 24 | } 25 | 26 | return count; 27 | } 28 | 29 | 30 | } 31 | 32 | -------------------------------------------------------------------------------- /TopCoder/TC_768.java: -------------------------------------------------------------------------------- 1 | public class TC_768 { 2 | static int maxPref(String s) { 3 | String alph = "abcdefghijklmnopqrstuvwxyz"; 4 | 5 | int count = 0; 6 | for (int i = 0, j = 0; i < s.length(); ++i) { 7 | if (s.charAt(i) == alph.charAt(j)) { 8 | count++; 9 | j++; 10 | } else 11 | break; 12 | 13 | } 14 | 15 | return count; 16 | 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /TopCoder/TC_769.java: -------------------------------------------------------------------------------- 1 | public class TC_769 { 2 | public int count(String meadow) { 3 | 4 | int count = 0; 5 | for (int i = 0; i < meadow.length() - 1; ++i) { 6 | 7 | if (meadow.charAt(i) == '(' && meadow.charAt(i + 1) == '|') 8 | count++; 9 | else if (meadow.charAt(i) == '|' && meadow.charAt(i + 1) == ')') 10 | count++; 11 | else if (meadow.charAt(i) == '(' && meadow.charAt(i + 1) == ')') 12 | count++; 13 | } 14 | return count; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /TopCoder/TC_China_2008_Round_1C.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | public class TC_China_2008_Round_1C { 4 | 5 | public static void main(String[] args) { 6 | 7 | 8 | System.out.println(matchFiles(new String[] 9 | 10 | 11 | 12 | {"config.sys", "config.inf", "configures"})); 13 | 14 | 15 | 16 | 17 | 18 | } 19 | static String matchFiles(String[] filenames) 20 | { 21 | String res = ""; 22 | loop: for(int i = 0 ; i s = new TreeSet(); 16 | 17 | for(char ch : diet.toCharArray())s.add(ch); 18 | 19 | for(char ch : breakfast.toCharArray())if(!breakfast.equals("")&&s.contains(ch))s.remove(ch);else return "CHEATER"; 20 | for(char ch : lunch.toCharArray())if(!lunch.equals("")&&s.contains(ch))s.remove(ch);else return "CHEATER"; 21 | 22 | for(char chRes : new ArrayList(s))res +=chRes; 23 | 24 | return res; 25 | 26 | } 27 | 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /URI/README.txt: -------------------------------------------------------------------------------- 1 | URI online judge 2 | http://urionlinejudge.com.br/ 3 | 4 | file name: 5 | URI_ID 6 | 7 | ID : id problem -------------------------------------------------------------------------------- /URI/URI_1216.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | 6 | import java.io.InputStreamReader; 7 | import java.util.Locale; 8 | 9 | public class URI_1216 { 10 | public static void main(String[] args) throws IOException { 11 | Locale.setDefault(Locale.US); 12 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 13 | 14 | String name=""; 15 | int n; int count=0; 16 | double sum=0.0; 17 | 18 | name = br.readLine(); 19 | while(name != null) { 20 | n = Integer.parseInt(br.readLine()); 21 | 22 | sum+=n; 23 | count++; 24 | 25 | name = br.readLine(); 26 | } 27 | 28 | System.out.printf("%.1f\n",(double)sum/count); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /URI/URI_1387_cpp.java: -------------------------------------------------------------------------------- 1 | //============================================================================ 2 | // Name : test.cpp 3 | // Author : asd 4 | // Version : 5 | // Copyright : Your copyright notice 6 | // Description : Hello World in C++, Ansi-style 7 | //============================================================================ 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | 17 | 18 | using namespace std; 19 | 20 | 21 | 22 | int Mmin() { 23 | 24 | int l ,r; 25 | while(true) 26 | { 27 | cin>>l;//=R.nextInt(); 28 | cin>> r;//=R.nextInt(); 29 | int total=0; 30 | if(l==0&&r==0)break; 31 | 32 | total = l+r; 33 | cout<b) 18 | System.out.println(a-b); 19 | else 20 | System.out.println(b-a); 21 | 22 | } 23 | }catch(InputMismatchException e) // Except handle 24 | { 25 | 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /UVA/UVA_10056.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | 5 | public class UVA_10056 { 6 | 7 | public static void main(String[] args) { 8 | 9 | Scanner sc = new Scanner(System.in); 10 | 11 | //Ans=(P(i-P)^i-1)/(1-(1-P)^n); 12 | 13 | 14 | int test =sc.nextInt(); 15 | while(test-->0) 16 | { 17 | int n = sc.nextInt(); 18 | double p = sc.nextDouble(); 19 | int player = sc.nextInt(); 20 | 21 | double max= 0.000001; 22 | 23 | double Prob_first= p*Math.pow(1-p, player-1); 24 | double res=0.0; 25 | int count =1; 26 | res = Prob_first; 27 | while(true) 28 | { 29 | double New_prob = Math.pow(1-p, count*n); 30 | if(New_prob * Prob_first0) 18 | { 19 | BigInteger x = sc.nextBigInteger(); 20 | BigInteger y = sc.nextBigInteger();//sc.nextInt(); 21 | BigInteger m = sc.nextBigInteger(); 22 | System.out.println(x.modPow(y, m)); 23 | 24 | } 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /UVA/UVA_12502.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.Scanner; 7 | 8 | public class UVA_12502 { 9 | public static void main(String[] args) throws IOException { 10 | 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | Scanner sc = new Scanner(System.in); 13 | 14 | int test=sc.nextInt();int x=0,y=0,z=0; 15 | while(test-->0) 16 | { 17 | x= sc.nextInt(); 18 | y=sc.nextInt(); 19 | z=sc.nextInt(); 20 | int res = z*(x+(x-y))/(x+y) ; 21 | 22 | System.out.println(res); 23 | 24 | } 25 | 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /UVA/UVA_12592.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.IOException; 5 | import java.io.InputStreamReader; 6 | import java.util.HashMap; 7 | 8 | public class UVA_12592 { 9 | 10 | public static void main(String[] args) throws NumberFormatException, IOException { 11 | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 12 | int n = Integer.parseInt(br.readLine()); 13 | 14 | HashMapmap = new HashMap(); 15 | while(n-->0) 16 | { 17 | String name1=br.readLine(); 18 | String name2=br.readLine(); 19 | map.put(name1, name2); 20 | 21 | } 22 | n = Integer.parseInt(br.readLine()); 23 | while(n-->0) 24 | { 25 | System.out.println(map.get(br.readLine())); 26 | 27 | } 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /UVA/UVA_264.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Arrays; 4 | import java.util.HashSet; 5 | import java.util.Scanner; 6 | 7 | public class UVA_264 { 8 | 9 | public static void main(String[] args) { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | while (sc.hasNext()) { 14 | int num = sc.nextInt(),index=num,count=0; 15 | 16 | for (count=1; index>count; count++) index-=count; 17 | 18 | 19 | int nomirator = count%2==0 ? index : count-index+1; 20 | int donimator = count-nomirator+1; 21 | 22 | System.out.printf("TERM %d IS %d/%d\n", num, nomirator,donimator); 23 | } 24 | 25 | } 26 | public static int GCD(int i , int j) 27 | { 28 | if(i==0||j==0)return i+j; 29 | return GCD(j,i%j); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /UVA/UVA_424.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.io.BufferedReader; 4 | import java.io.BufferedWriter; 5 | import java.io.IOException; 6 | import java.io.InputStreamReader; 7 | import java.io.OutputStreamWriter; 8 | import java.math.BigInteger; 9 | import java.util.Scanner; 10 | import java.util.StringTokenizer; 11 | 12 | public class UVA_424 { 13 | 14 | public static void main (String [] args) throws IOException { 15 | 16 | BigInteger sum=BigInteger.ZERO; 17 | Scanner sc = new Scanner(System.in); 18 | while(true) 19 | { 20 | BigInteger bg = sc.nextBigInteger(); 21 | if(bg.toString().equals("0"))break; 22 | sum = sum.add(bg); 23 | 24 | } 25 | System.out.println(sum); 26 | } 27 | 28 | 29 | } 30 | -------------------------------------------------------------------------------- /UVA/UVA_628.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.*; 4 | public class UVA_628 { 5 | static List dict; 6 | static void solve(String rule, String pass) { 7 | if (rule.isEmpty()) { 8 | System.out.println(pass); 9 | return; 10 | } 11 | char c = rule.charAt(0); 12 | String newrule = rule.substring(1, rule.length()); 13 | if (c == '0') { 14 | for (char d = '0'; d <= '9'; ++d) 15 | solve(newrule, pass + d); 16 | } else { 17 | for (String word : dict) 18 | solve(newrule, pass + word); 19 | } 20 | } 21 | public static void main(String[] args) { 22 | Scanner in = new Scanner(System.in); 23 | while (in.hasNext()) { 24 | int n = in.nextInt(); 25 | dict = new ArrayList(); 26 | for (int i = 0; i < n; ++i) 27 | dict.add(in.next()); 28 | System.out.println("--"); 29 | int m = in.nextInt(); 30 | for (int i = 0; i < m; ++i) { 31 | String rule = in.next(); 32 | solve(rule, ""); 33 | } 34 | } 35 | } 36 | } -------------------------------------------------------------------------------- /UVA/UVA_993.java: -------------------------------------------------------------------------------- 1 | package Main; 2 | 3 | import java.util.Scanner; 4 | //993 - Product of digits uva 5 | public class UVA_993 { 6 | 7 | 8 | public static void main(String[] args) 9 | { 10 | 11 | Scanner sc = new Scanner(System.in); 12 | 13 | int test = sc.nextInt();int num; 14 | for(int t = 1;t<=test;t++) 15 | { 16 | num = sc.nextInt(); 17 | 18 | String s=""; 19 | if(num==1)System.out.println(1); 20 | 21 | else 22 | { 23 | 24 | 25 | 26 | for(int j =9;j>=2;j--) 27 | { 28 | while(num%j==0) 29 | { 30 | num/=j; 31 | s=j+""+s; 32 | 33 | 34 | 35 | } 36 | 37 | } 38 | if(num==1)System.out.println(s); 39 | else 40 | System.out.println(-1); 41 | } 42 | 43 | } 44 | } 45 | 46 | 47 | 48 | 49 | } 50 | 51 | 52 | -------------------------------------------------------------------------------- /geeksforgeeks/GFG_find_the_element_that_appears_once_in_sorted_array.java: -------------------------------------------------------------------------------- 1 | import java.util.Scanner; 2 | 3 | 4 | /* https://practice.geeksforgeeks.org/problems/find-the-element-that-appears-once-in-sorted-array/0 */ 5 | 6 | public class GFG_find_the_element_that_appears_once_in_sorted_array { 7 | 8 | public static void main (String args[]){ 9 | 10 | Scanner sc = new Scanner(System.in); 11 | 12 | int t = sc.nextInt(); 13 | 14 | while(t-- > 0){ 15 | 16 | int n = sc.nextInt(), res = sc.nextInt(); 17 | 18 | for(int i = 1 ; i < n ; res ^= sc.nextInt(),++i ); 19 | 20 | System.out.println(res); 21 | 22 | } 23 | 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /leetcode/Leetcode_104_DFS.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_104_DFS { 2 | //https://leetcode.com/problems/maximum-depth-of-binary-tree/ 3 | } 4 | 5 | 6 | class Solution20 { 7 | public int maxDepth(TreeNode root) { 8 | if(root == null)return 0; 9 | if(root.left == null && root.right == null)return 1; 10 | 11 | int left = 1+maxDepth(root.left); 12 | int right = 1+maxDepth(root.right); 13 | 14 | return Math.max(left,right); 15 | } 16 | } 17 | 18 | /** 19 | * Definition for a binary tree node. 20 | * public class TreeNode { 21 | * int val; 22 | * TreeNode left; 23 | * TreeNode right; 24 | * TreeNode(int x) { val = x; } 25 | * } 26 | */ -------------------------------------------------------------------------------- /leetcode/Leetcode_198_DP.java: -------------------------------------------------------------------------------- 1 | import java.util.Arrays; 2 | 3 | public class Leetcode_198_DP { 4 | //https://leetcode.com/problems/house-robber/ 5 | } 6 | 7 | class Solution4 { 8 | static int[] memo; 9 | 10 | public int rob(int[] nums) { 11 | memo = new int[1000]; 12 | Arrays.fill(memo, -1); 13 | return maxCost(0, nums); 14 | } 15 | 16 | 17 | public int maxCost(int i, int nums[]) { 18 | 19 | if (i >= nums.length) 20 | return 0; 21 | 22 | if (memo[i] != -1) 23 | return memo[i]; 24 | 25 | return memo[i] = Math.max(nums[i] + maxCost(i + 2, nums), maxCost(i + 1, nums)); 26 | } 27 | 28 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_303_DP.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_303_DP { 2 | //https://leetcode.com/problems/range-sum-query-immutable/ 3 | } 4 | 5 | class NumArray { 6 | static int arr2[]; 7 | 8 | public NumArray(int[] nums) { 9 | arr2= new int[nums.length+1]; 10 | for (int i = 1; i <= nums.length; ++i) arr2[i] = arr2[i-1] + nums[i - 1]; 11 | 12 | } 13 | 14 | public int sumRange(int i, int j) { 15 | return arr2[j+1] - arr2[i]; 16 | } 17 | } 18 | 19 | -------------------------------------------------------------------------------- /leetcode/Leetcode_338.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_338 { 2 | //https://leetcode.com/problems/counting-bits/ 3 | } 4 | 5 | class Solution5 { 6 | public int[] countBits(int num) { 7 | int res[] = new int[num + 1]; 8 | for (int i = 0; i < res.length; ++i) 9 | res[i] = Integer.bitCount(i); 10 | 11 | return res; 12 | } 13 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_392.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_392 { 2 | //https://leetcode.com/problems/is-subsequence/ 3 | } 4 | 5 | class Solution2 { 6 | public boolean isSubsequence(String s, String t) { 7 | return solution(0, 0, s, t); 8 | 9 | } 10 | 11 | public boolean solution(int i, int j, String s, String t) { 12 | 13 | if (i == s.length()) 14 | return true; 15 | 16 | if (j >= t.length()) 17 | return false; 18 | 19 | if (s.charAt(i) == t.charAt(j)) 20 | return solution(i + 1, j + 1, s, t); 21 | 22 | return solution(i, j + 1, s, t); 23 | } 24 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_53.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_53 { 2 | //https://leetcode.com/problems/maximum-subarray/ 3 | } 4 | 5 | class Solution15 { 6 | public int maxSubArray(int[] nums) { 7 | if(nums.length == 1) 8 | return nums[0]; 9 | return maxSub( nums); 10 | 11 | } 12 | // Kadane's algorithm 13 | public int maxSub( int[] nums) { 14 | int max = Integer.MIN_VALUE, sum = 0; 15 | 16 | for (int i = 0; i < nums.length; ++i) { 17 | sum += nums[i]; 18 | max = Math.max(max, sum); 19 | if(sum < 0) 20 | sum = 0; 21 | } 22 | return max; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /leetcode/Leetcode_559_DFS.java: -------------------------------------------------------------------------------- 1 | import java.util.List; 2 | 3 | public class Leetcode_559_DFS { 4 | //https://leetcode.com/problems/maximum-depth-of-n-ary-tree 5 | } 6 | 7 | // Definition for a Node. 8 | class Node { 9 | public int val; 10 | public List children; 11 | 12 | public Node() {} 13 | 14 | public Node(int _val) { 15 | val = _val; 16 | } 17 | 18 | public Node(int _val, List _children) { 19 | val = _val; 20 | children = _children; 21 | } 22 | }; 23 | 24 | class Solution19 { 25 | public int maxDepth(Node root) { 26 | if(root == null)return 0; 27 | int max = 1; 28 | for(Node n : root.children){ 29 | max = Math.max(max,1+maxDepth(n)); 30 | } 31 | return max; 32 | } 33 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_62_DP.java: -------------------------------------------------------------------------------- 1 | import java.util.Arrays; 2 | 3 | public class Leetcode_62_DP { 4 | //https://leetcode.com/problems/unique-paths/ 5 | } 6 | 7 | class Solution10 { 8 | static int[][] memo3; 9 | 10 | public int uniquePaths(int m, int n) { 11 | memo3 = new int[n][m]; 12 | for (int i = 0; i < memo3.length; ++i) Arrays.fill(memo3[i], -1); 13 | 14 | return path(n - 1, m - 1, m, n); 15 | } 16 | 17 | public int path(int i, int j, int m, int n) { 18 | 19 | if (i == 0 && j == 0) 20 | return 1; 21 | 22 | if (i < 0 || j < 0) 23 | return 0; 24 | 25 | if (memo3[i][j] != -1) 26 | return memo3[i][j]; 27 | 28 | int x = path(i - 1, j, m, n); 29 | int y = path(i, j - 1, m, n); 30 | 31 | return memo3[i][j] = x + y; 32 | 33 | } 34 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_70_DP.java: -------------------------------------------------------------------------------- 1 | import java.util.Arrays; 2 | 3 | public class Leetcode_70_DP { 4 | //https://leetcode.com/problems/climbing-stairs/ 5 | } 6 | 7 | class Solution3 { 8 | static int[] memo; 9 | 10 | public int climbStairs(int n) { 11 | memo = new int[1000]; 12 | Arrays.fill(memo, -1); 13 | return solution2(n + 1); 14 | 15 | } 16 | 17 | public int solution2(int n) { 18 | 19 | if (n == 1) 20 | return 1; 21 | 22 | if (n <= 0) 23 | return 0; 24 | 25 | if (memo[n] != -1) 26 | return memo[n]; 27 | 28 | return memo[n] = solution2(n - 1) + solution2(n - 2); 29 | } 30 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_718_DP.java: -------------------------------------------------------------------------------- 1 | public class Leetcode_718_DP { 2 | //https://leetcode.com/problems/maximum-length-of-repeated-subarray/ 3 | } 4 | 5 | class Solution7 { 6 | public int findLength(int[] A, int[] B) { 7 | int dp[][] = new int[A.length + 1][B.length + 1]; 8 | 9 | int max = -1; 10 | for (int i = 1; i <= A.length; ++i) { 11 | for (int j = 1; j <= B.length; ++j) { 12 | if (A[i - 1] == B[j - 1]) 13 | dp[i][j] = 1 + dp[i - 1][j - 1]; 14 | else 15 | dp[i][j] = 0; 16 | 17 | max = Math.max(max, dp[i][j]); 18 | } 19 | } 20 | return max; 21 | } 22 | } -------------------------------------------------------------------------------- /leetcode/Leetcode_746_DP.java: -------------------------------------------------------------------------------- 1 | import java.util.Arrays; 2 | 3 | public class Leetcode_746_DP { 4 | 5 | //https://leetcode.com/problems/min-cost-climbing-stairs/ 6 | 7 | 8 | } 9 | 10 | class Solution { 11 | static int[] memo; 12 | 13 | public int minCostClimbingStairs(int[] cost) { 14 | memo = new int[1001]; 15 | Arrays.fill(memo, -1); 16 | return minCost(-1, cost); 17 | 18 | } 19 | 20 | public int minCost(int i, int cost[]) { 21 | 22 | 23 | if (i >= cost.length) { 24 | return 0; 25 | } 26 | 27 | if (memo[i + 1] != -1) 28 | return memo[i + 1]; 29 | 30 | int val = i < 0 ? 0 : cost[i]; 31 | int first = minCost(i + 1, cost); 32 | int second = minCost(i + 2, cost); 33 | 34 | return memo[i + 1] = val + Math.min(first, second); 35 | } 36 | } --------------------------------------------------------------------------------