Skip to content

Instantly share code, notes, and snippets.

@rogerioagjr
Last active June 7, 2016 18:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rogerioagjr/d24ecf65612c4b20d55860435822e4a5 to your computer and use it in GitHub Desktop.
Save rogerioagjr/d24ecf65612c4b20d55860435822e4a5 to your computer and use it in GitHub Desktop.
Lâmpadas
// Lâmpadas - F1PJ/F1P1 - OBI 2016
// Rogério Júnior
// Complexidade: O(n)
#include <cstdio> // scanf e printf
int main(){
// declaro as variáveis que irei usar
int i1=0, i2=0, n;
// leio a quantidade de vezes que aperto um interruptor
scanf("%d",&n);
// para cada vez que apertamos um interruptor
for(int i=0;i<n;i++){
// declaro idx
int idx;
// leio qual interruptor foi apertado e salvo em idx
scanf("%d",&idx);
// se apertei o interruptor 1
if(idx==1){
// troco o estado da lâmpada A
// se ela estava acesa
if(i1==1){
// então a apago
i1=0;
}
// caso contrário, ela estava apagada
else{
// então a acendo
i1=1;
}
}
// caso contrário, apertei o interruptor 2
else{
// troco o estado da lâmpada A
// se ela estava acesa
if(i1==1){
// então a apago
i1=0;
}
// caso contrário, ela estava apagada
else{
// então a acendo
i1=1;
}
// troco o estado da lâmpada B
// se ela estava acesa
if(i2==1){
// então a apago
i2=0;
}
// caso contrário, ela estava apagada
else{
// então a acendo
i2=1;
}
}
}
// por fim, imprimo os estados das lâmpadas
printf("%d\n%d\n",i1,i2);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment