└── CodeSignal ├── Add.java ├── Circle_of_Numbers.java ├── shapeArea.java ├── Array_Replace.java ├── bishopAndPawn.java ├── checkPalindrome.java ├── depositProfit.java ├── Make_Array_Consecutive_2.java ├── centuryFromYear.java ├── evenDigitsOnly.java ├── arrayMaximalAdjacentDifference.java ├── alternatingSums.java ├── firstDigit.java ├── isBeautifulString.java ├── digitDegree.java ├── differentSymbolsNaive.java ├── areEquallyStrong.java ├── growingPlant.java ├── chessBoardCellColor.java ├── isLucky.java ├── adjacentElementsProduct.java ├── alphabeticShift.java ├── arrayMaxConsecutiveSum.java ├── palindromeRearranging.java ├── arrayChange.java ├── Add_Border.java ├── avoidObstacles.java ├── matrixElementsSum.java ├── VariableName.java ├── Sort_by_Height.java ├── BoxBlur.java ├── almostIncreasingSequence.java ├── Are_Similar.java ├── Knapsack_Light.java ├── absoluteValuesSumMinimization.java ├── All_Longest_Strings.java ├── commonCharacterCount.java ├── isIPv4Address.java ├── extractEachKth.java ├── stringsRearrangement.java └── Minesweeper.java /CodeSignal/Add.java: -------------------------------------------------------------------------------- 1 | int add(int param1, int param2) { 2 | return param1+param2; 3 | } -------------------------------------------------------------------------------- /CodeSignal/Circle_of_Numbers.java: -------------------------------------------------------------------------------- 1 | int circleOfNumbers(int n, int firstNumber) { 2 | return (n / 2 + firstNumber) % n; 3 | } -------------------------------------------------------------------------------- /CodeSignal/shapeArea.java: -------------------------------------------------------------------------------- 1 | int shapeArea(int n) { 2 | if(n == 1) return 1; 3 | return 4*(n-1) + shapeArea(n-1); 4 | } -------------------------------------------------------------------------------- /CodeSignal/Array_Replace.java: -------------------------------------------------------------------------------- 1 | int[] arrayReplace(int[] a, int x, int r) { 2 | for(int i=0;i= threshold) 5 | return y; 6 | } 7 | -------------------------------------------------------------------------------- /CodeSignal/Make_Array_Consecutive_2.java: -------------------------------------------------------------------------------- 1 | int makeArrayConsecutive2(int[] statues) { 2 | Arrays.sort(statues); 3 | int range= statues[statues.length-1]-statues[0]+1; 4 | int ans =statues.length-range; 5 | return Math.abs(ans); 6 | } -------------------------------------------------------------------------------- /CodeSignal/centuryFromYear.java: -------------------------------------------------------------------------------- 1 | int centuryFromYear(int year) { 2 | // return year/100+(year%100 != 0?1: 0); 3 | 4 | int n=year/100; 5 | if((year%100)!=0) 6 | return n+1; 7 | else 8 | return n; 9 | } 10 | -------------------------------------------------------------------------------- /CodeSignal/evenDigitsOnly.java: -------------------------------------------------------------------------------- 1 | boolean evenDigitsOnly(int n) { 2 | String s=Integer.toString(n); 3 | for(int i=0;i='0' && s.charAt(i)<='9'){ 5 | c=s.charAt(i); 6 | break; 7 | } 8 | } 9 | return c; 10 | } 11 | -------------------------------------------------------------------------------- /CodeSignal/isBeautifulString.java: -------------------------------------------------------------------------------- 1 | boolean isBeautifulString(String inputString) { 2 | byte[] abc = new byte[26]; 3 | for(char c : inputString.toCharArray()) abc[c - 'a']++; 4 | for(byte i = 0; i < 25; i++) if(abc[i + 1] > abc[i]) return false; 5 | return true; 6 | } 7 | -------------------------------------------------------------------------------- /CodeSignal/digitDegree.java: -------------------------------------------------------------------------------- 1 | int digitDegree(int n) { 2 | int c=0; 3 | while(n>=10){ 4 | c++; 5 | int s=0; 6 | while(n>0){ 7 | s+=(n%10); 8 | n/=10; 9 | } 10 | n=s; 11 | } 12 | return c; 13 | } 14 | -------------------------------------------------------------------------------- /CodeSignal/differentSymbolsNaive.java: -------------------------------------------------------------------------------- 1 | int differentSymbolsNaive(String s) { 2 | char c[]=s.toCharArray(); 3 | int flag=1; 4 | Arrays.sort(c); 5 | for(int i=0;i= desiredHeight) 7 | break; 8 | height -= downSpeed; 9 | } 10 | return count; 11 | } -------------------------------------------------------------------------------- /CodeSignal/chessBoardCellColor.java: -------------------------------------------------------------------------------- 1 | boolean chessBoardCellColor(String cell1, String cell2) { 2 | 3 | int x1 = cell1.charAt(0) - 'A'; 4 | int y1= cell1.charAt(1)-'0'; 5 | int x2 = cell2.charAt(0) - 'A'; 6 | int y2= cell2.charAt(1)-'0'; 7 | 8 | return (x1 + x2) % 2 == (y1 + y2) % 2; 9 | } 10 | -------------------------------------------------------------------------------- /CodeSignal/isLucky.java: -------------------------------------------------------------------------------- 1 | boolean isLucky(int n) { 2 | String s=Integer.toString(n); 3 | int x=s.length(); 4 | int s1=0,s2=0; 5 | for(int i=0,j=x-1;i max) 8 | max = sum; 9 | } 10 | return max; 11 | } 12 | -------------------------------------------------------------------------------- /CodeSignal/palindromeRearranging.java: -------------------------------------------------------------------------------- 1 | boolean palindromeRearranging(String s) { 2 | char[] g = s.toCharArray(); 3 | int[] o=new int[26]; 4 | for(int i=0;i= inputArray[i]) { 6 | int difference = Math.abs(inputArray[i - 1] - inputArray[i]) + 1 ; 7 | inputArray[i] += difference; 8 | ans += difference; 9 | } 10 | } 11 | return ans; 12 | } 13 | -------------------------------------------------------------------------------- /CodeSignal/Add_Border.java: -------------------------------------------------------------------------------- 1 | String[] addBorder(String[] picture) { 2 | String s="*"; 3 | Listrg=new ArrayList(); 4 | rg.add(s.repeat(picture[0].length()+2)); 5 | for(int i=0;i> matrix) { 2 | int c=0,i,j; 3 | for(i=0;i=65 && c<=90) && !(c>=97 && c<=122)) 5 | return false; 6 | for(int i=1;i=48 && c<=57) && c!='_' && !(c>=65 && c<=90) && !(c>=97 && c<=122)) 9 | return false; 10 | } 11 | return true; 12 | } -------------------------------------------------------------------------------- /CodeSignal/Sort_by_Height.java: -------------------------------------------------------------------------------- 1 | int[] sortByHeight(int[] a) { 2 | int []park=a.clone(); 3 | Arrays.sort(a); 4 | List rg=new ArrayList(); 5 | for(int i:a) 6 | if(i!=-1) 7 | rg.add(i); 8 | for(int i=0,j=0;i=0 && a[i+1]<=a[i-1]; 12 | if(x&&y || c>=2) 13 | return false; 14 | } 15 | } 16 | return true; 17 | } 18 | -------------------------------------------------------------------------------- /CodeSignal/Are_Similar.java: -------------------------------------------------------------------------------- 1 | boolean areSimilar(int[] a, int[] b) { 2 | Stack rg = new Stack(); 3 | int c=0; 4 | for(int i=0;i=2) 14 | return false; 15 | } 16 | return rg.empty(); 17 | } 18 | -------------------------------------------------------------------------------- /CodeSignal/Knapsack_Light.java: -------------------------------------------------------------------------------- 1 | int knapsackLight(int value1, int weight1, int value2, int weight2, int maxW) { 2 | if(maxW >= weight1 + weight2) 3 | return (value1 + value2); 4 | else if(value2 > value1 && maxW >= weight2) 5 | return value2; 6 | else if(value1 > value2 && maxW >= weight1) 7 | return value1; 8 | else if(maxW >= weight1) 9 | return value1; 10 | else if(maxW >= weight2) 11 | return value2; 12 | return 0; 13 | 14 | } 15 | -------------------------------------------------------------------------------- /CodeSignal/absoluteValuesSumMinimization.java: -------------------------------------------------------------------------------- 1 | int absoluteValuesSumMinimization(int[] a) { 2 | int x=a[0],min=0,g=x; 3 | for(int j=0;jsum){ 14 | min=sum; 15 | g=x; 16 | // System.out.println(g); 17 | } 18 | } 19 | return g; 20 | } 21 | -------------------------------------------------------------------------------- /CodeSignal/All_Longest_Strings.java: -------------------------------------------------------------------------------- 1 | String[] allLongestStrings(String[] s) { 2 | if(s.length==1) 3 | return s; 4 | int max=0,c=0,x=0; 5 | for(int i=0;ic1=new ArrayList(); 4 | ArrayListc2=new ArrayList(); 5 | for(int i=0;i3 || Integer.valueOf(g)<0 || Integer.valueOf(g)>255 || (g.length()>1 && g.charAt(0)=='0')) 22 | return false; 23 | } 24 | return true; 25 | } 26 | -------------------------------------------------------------------------------- /CodeSignal/extractEachKth.java: -------------------------------------------------------------------------------- 1 | int[] extractEachKth(int[] a, int k) { 2 | int j=0,c=0; 3 | for(int i=0;i rg= new ArrayList(); 25 | for(int i=0;i