Added challenges of the first trial

This commit is contained in:
Abreu 2021-09-28 19:08:27 -03:00
parent 49bd065a7f
commit d7e5a09cb6
No known key found for this signature in database
GPG Key ID: 64835466FF55F7E1
10 changed files with 213 additions and 0 deletions

43
2021/0/bullets.c Normal file
View File

@ -0,0 +1,43 @@
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int value, pos;
} Node;
void selectionSort(Node * sequence, int size) {
int i, j, pos;
Node aux;
for (i = 0; i < size - 1; i++) {
pos = i;
for (j = i + 1; j < size; j++)
if (sequence[j].value < sequence[pos].value)
pos = j;
aux = sequence[i];
sequence[i] = sequence[pos];
sequence[pos] = aux;
}
}
int main(){
int n, i, size, value;
Node * array;
scanf("%d\n%d", &n, &size);
while (n > 0) {
array = malloc(size * sizeof(*array));
for (i = 0; i < size; i++) {
array[i].pos = i;
scanf("%d", &value);
array[i].value = value;
}
selectionSort(array, size);
for (i = 0; i < size; i++)
printf("%d-%d ", array[i].value, array[i].pos);
printf("\n");
free(array);
n--;
}
return 0;
}

BIN
2021/0/desafio1.pdf Normal file

Binary file not shown.

BIN
2021/0/desafio2.pdf Normal file

Binary file not shown.

BIN
2021/0/desafio3.pdf Normal file

Binary file not shown.

BIN
2021/0/desafio4.pdf Normal file

Binary file not shown.

BIN
2021/0/hash.out Executable file

Binary file not shown.

37
2021/0/mensagem.c Normal file
View File

@ -0,0 +1,37 @@
#include <stdio.h>
#include <string.h>
int main(){
int n;
char c1, c2, output;
for(scanf("%d\n", &n); n > 0; n--) {
while (scanf("%c", &c1) && c1 != '\n') {
if (c1 == ' ') {
printf(" ");
continue;
}
scanf("%c", &c2);
output = 'A' + 5 * (c1 - '0') + (c2 - '0');
if (output <= 'Z'){
printf("%c", output);
continue;
}
switch (output) {
case 'Z' + 1:
printf(",");
break;
case 'Z' + 2:
printf(".");
break;
case 'Z' + 3:
printf("?");
break;
default:
printf("!");
}
}
printf("\n");
}
return 0;
}

32
2021/0/ninja.c Normal file
View File

@ -0,0 +1,32 @@
#include <stdio.h>
int main () {
int n = 0;
char c;
for (scanf("%d\n", &n); n > 0; n--) {
while (scanf("%c", &c) && c != '\n') {
switch (c) {
case 'D':
printf("Rolada tatica ninja.\n");
break;
case 'E':
printf("Esquerdei, e agora?\n");
break;
case 'C':
printf("Eita pipoco. Zumm!\n");
break;
case 'B':
printf("\n");
break;
case 'F':
printf("Pronto e agora, e agora?\n");
break;
case 'A':
printf("Nem ferrando. Vou de agentes mesmo.\n");
break;
}
}
}
return 0;
}

BIN
2021/0/ninja.out Executable file

Binary file not shown.

101
2021/0/tic_tac.c Normal file
View File

@ -0,0 +1,101 @@
#include <stdio.h>
int resolve (char game[3][3], int * line) {
int i, j;
char win = 'O';
for (i = 1; i < 3; i++) {
/* Teste horizontal */
for (j = 0; j < 9; j++) {
if (game[j / 3][j % 3] != win)
j += 2 - (j % 3);
else if (j % 3 == 2) {
if (win == 'V') {
j -= 2;
do {
line[j % 3] = 10 * (j / 3) + (j % 3) + 11;
game[j / 3][j % 3] = 'X';
j++;
} while(j % 3 != 0);
}
return i;
}
}
/* Teste vertical */
for (j = 0; j < 9; j++) {
if (game[j % 3][j / 3] != win)
j += 2 - (j % 3);
else if (j % 3 == 2) {
if (win == 'V') {
j -= 2;
do {
line[j % 3] = 10 * (j % 3) + (j / 3) + 11;
game[j % 3][j / 3] = 'X';
j++;
} while(j % 3 != 0);
}
return i;
}
}
/* Caso diagonal direto */
for (j = 0; j < 3; j++) {
if (game[j][j] != win)
break;
if (j == 2) {
if (win == 'V') {
for (j = 0; j < 3; j++) {
line[j] = 11 * j + 11;
game[j][j] = 'X';
}
}
return i;
}
}
/* Caso diagonal inverso */
for (j = 0; j < 3; j++) {
if (game[2 - j][j] != win)
break;
if (j == 2) {
if (win == 'V') {
for (j = 0; j < 3; j++) {
line[2 - j] = 10 * (2 - j) + j + 11;
game[2 - j][j] = 'X';
}
}
return i;
}
}
win = 'V';
}
return 0;
}
int main () {
int i, line[3], n = 0;
char game[3][3];
for (scanf("%d", &n); n > 0; n--) {
for (i = 0; i < 9; i++)
scanf(" %c", &game[i / 3][i % 3]);
switch (resolve(game, line)) {
case 0:
printf("Bora outra valendo os dois Tic-Tac ?\n");
break;
case 1:
printf("Tic-Tac de cereja eh bom tambem\n");
break;
default:
printf("Hora de tirar o bafo\n%d-%d-%d\n", line[0], line[1], line[2]);
for (i = 0; i < 9; i++) {
printf("%c ", game[i / 3][i % 3]);
if (i % 3 == 2)
printf("\n");
}
}
}
return 0;
}