[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 187
  • Last Modified:

scores100 challenge

Hi,

I am working on below challenge

http://codingbat.com/prob/p179487

Pseudo Code:
1. loop through given array
2. find elemt a i position and i+1 position.
3. check their equality.
4. if equal return true
5. if not equal reurn false

I wrote my code as below
public boolean scores100(int[] scores) {
  
  boolean result=true;
  int len=scores.length;
for(int i=0;i<len-1;i++){
  if(scores[i]!=100&&scores[i+1]!=100){
   // i=i+1;
    result=false;
    
    return result;
  }
}
return result;
  

}

Open in new window



Expected      Run            
scores100([1, 100, 100]) → true      true      OK      
scores100([1, 100, 99, 100]) → false      true      X      
scores100([100, 1, 100, 100]) → true      true      OK      
scores100([100, 1, 100, 1]) → false      true      X      
scores100([1, 2, 3, 4, 5]) → false      false      OK      
scores100([1, 2, 100, 4, 5]) → false      false      OK      
other tests
OK      

I am not passing all tests

How to improve my psedo code, approach, code? please advise
0
gudii9
Asked:
gudii9
2 Solutions
 
Gerwin Jansen, EE MVETopic Advisor Commented:
Your pseudo code looks OK to me, your code doesn't match. Assume that there are no 2 scores of 100 next to each other, set your flag to true once you've found one.
0
 
gudii9Author Commented:
public boolean scores100(int[] scores) {
  
  boolean result=false;
  int len=scores.length;
for(int i=0;i<len-1;i++){
  if(scores[i]==100&&scores[i+1]==100){
   // i=i+1;
    result=true;
    
    return result;
  }
}
return result;
  

}
//Your pseudo code looks OK to me, your code doesn't match. Assume that there 
//are no 2 scores of 100 next to each other, set your flag to true once you've found one.

Open in new window


above passes all tests.
any improvements?
0
 
mccarlIT Business Systems Analyst / Software DeveloperCommented:
Your logic is good, the only thing that I would do differently, is that I think it reads even more simple if you remove the local variables, ie...
public boolean scores100(int[] scores) {
    for (int i = 0;i < scores.length - 1; i++) {
        if (scores[i] == 100 && scores[i+1] == 100) {
            return true;
        }
    }
    return false;
}

Open in new window

0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now