Pagini recente » Cod sursa (job #1427534) | Cod sursa (job #1471704) | Cod sursa (job #1452554) | Cod sursa (job #805407) | Cod sursa (job #2094212)
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <stdint.h>
void bubble_sort(uint64_t *vector, uint64_t size);
int main(void)
{
FILE *in = fopen("loto.in", "r");
FILE *out = fopen("loto.out", "w");
if(in != NULL && out != NULL)
{
uint64_t n, s, vector[110];
fscanf(in, "%llu%*c%llu%*c", &n, &s);
uint64_t i = 0;
for(; i < n; i++)
{
uint64_t t;
fscanf(in, "%llu%*c", &t);
vector[i] = t;
}
bool found = false;
i = 0;
int j = 0, a = 0, b = 0, c = 0, d = 0;
for(; i < n; i++)
{
if(vector[i] < s)
{
uint64_t cs = vector[i];
j = 0;
for(; j < n; j++)
{
if((cs + vector[j]) <= s)
{
cs += vector[j];
a = 0;
for(; a < n; a++)
{
if((cs + vector[a]) <= s)
{
cs += vector[a];
b = 0;
for(; b < n; b++)
{
c = 0;
for(; c < n; c++)
{
d = 0;
for(; d < n; d++)
{
uint64_t sum = vector[i] + vector[j] + vector[a] + vector[b] + vector[c] + vector[d];
if(sum == s)
{
fprintf(out, "%llu %llu %llu %llu %llu %llu\n", vector[i], vector[j], vector[a], vector[b], vector[c], vector[d]);
found = true;
goto end;
}
}
}
}
}
}
}
}
}
}
end:
;
if(!found)
{
fprintf(out, "-1\n");
}
fclose(in);
fclose(out);
}
else
{
printf("Error\n");
}
return 0;
}
void bubble_sort(uint64_t *vector, uint64_t size)
{
bool end = false;
while(!end)
{
end = true;
uint64_t i = 0;
for(; i < size - 1; i++)
{
if(vector[i] > vector[i + 1])
{
uint64_t temp = vector[i];
vector[i] = vector[i + 1];
vector[i + 1] = temp;
end = false;
}
}
}
}