#include <stdio.h>
#define BUFFER_SIZE 10000
typedef struct {
int V;
int D;
int C;
int A;
int U;
int R;
int E;
int G;
} Solution;
void generate_solutions(int *numbers, size_t size, Solution solution);
int main() {
Solution s = {.V = 1, .D = 4, .C = 2, .A = 6, .U = 7, .R = 8, .E = 5, .G = 3};
generate_solutions(NULL, 0, s);
return 0;
}
void generate_solutions(int *numbers, size_t size, Solution solution) {
int REG = (solution.V * 100 + solution.V * 10 + solution.D) +
(solution.D * 100 + 66) +
(solution.C * 100 + solution.D * 10 + solution.A) +
(solution.C * 10 + solution.U);
int isSolution = REG == (solution.R * 100 + solution.E * 10 + solution.G);
if (isSolution) {
printf("%d%d%d + %d66 + %d%d%d + %d%d = %d%d%d\r\n", solution.
V, solution.
V, solution.D, solution.D, solution.C, solution.D, solution.A,
solution.C, solution.U, solution.R, solution.E, solution.G);
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIEJVRkZFUl9TSVpFIDEwMDAwCgp0eXBlZGVmIHN0cnVjdCB7CiAgaW50IFY7CiAgaW50IEQ7CiAgaW50IEM7CiAgaW50IEE7CiAgaW50IFU7CgogIGludCBSOwogIGludCBFOwogIGludCBHOwp9IFNvbHV0aW9uOwoKdm9pZCBnZW5lcmF0ZV9zb2x1dGlvbnMoaW50ICpudW1iZXJzLCBzaXplX3Qgc2l6ZSwgU29sdXRpb24gc29sdXRpb24pOwoKaW50IG1haW4oKSB7CiAgU29sdXRpb24gcyA9IHsuViA9IDEsIC5EID0gNCwgLkMgPSAyLCAuQSA9IDYsIC5VID0gNywgLlIgPSA4LCAuRSA9IDUsIC5HID0gM307CgogIGdlbmVyYXRlX3NvbHV0aW9ucyhOVUxMLCAwLCBzKTsKCiAgcmV0dXJuIDA7Cn0KCnZvaWQgZ2VuZXJhdGVfc29sdXRpb25zKGludCAqbnVtYmVycywgc2l6ZV90IHNpemUsIFNvbHV0aW9uIHNvbHV0aW9uKSB7CiAgaW50IFJFRyA9IChzb2x1dGlvbi5WICogMTAwICsgc29sdXRpb24uViAqIDEwICsgc29sdXRpb24uRCkgKwogICAgICAgICAgICAoc29sdXRpb24uRCAqIDEwMCArIDY2KSArCiAgICAgICAgICAgIChzb2x1dGlvbi5DICogMTAwICsgc29sdXRpb24uRCAqIDEwICsgc29sdXRpb24uQSkgKwogICAgICAgICAgICAoc29sdXRpb24uQyAqIDEwICsgc29sdXRpb24uVSk7CgogIGludCBpc1NvbHV0aW9uID0gUkVHID09IChzb2x1dGlvbi5SICogMTAwICsgc29sdXRpb24uRSAqIDEwICsgc29sdXRpb24uRyk7CgogIGlmIChpc1NvbHV0aW9uKSB7CiAgICBwcmludGYoIiVkJWQlZCArICVkNjYgKyAlZCVkJWQgKyAlZCVkID0gJWQlZCVkXHJcbiIsIHNvbHV0aW9uLlYsIHNvbHV0aW9uLlYsCiAgICAgICAgICAgc29sdXRpb24uRCwgc29sdXRpb24uRCwgc29sdXRpb24uQywgc29sdXRpb24uRCwgc29sdXRpb24uQSwKICAgICAgICAgICBzb2x1dGlvbi5DLCBzb2x1dGlvbi5VLCBzb2x1dGlvbi5SLCBzb2x1dGlvbi5FLCBzb2x1dGlvbi5HKTsKICB9Cn0=