PROBLEMA DE JOSEPHUS

BREVIÁRIO ACADÊMICO #2

Trago um algoritmo bastante simples feito na Linguagem de Programação C, que soluciona um problema proposto pelo matemático Flavius Josephus em meados do ano 64. De acordo com lenda, um grupo de rebeldes, dentre eles Josephus, foram encurralados em uma caverna pelo exército inimigo. Preferindo o suicídio à captura, os rebeldes decidiram formar um círculo em que o primeiro deveria matar o soldado diretamente ao seu lado até sobrar apenas um, que sozinho, tiraria a própria vida. Josephus era o único que não queria morrer, e era impossível convencer os demais a se entregar. Então a única saída seria descobrir qual a posição do soldado que iria sobreviver. A solução pode ser obtida resolvendo o problema manualmente, simulando as mortes uma por uma, mas se o número de soldados for muito grande então a contagem fica inviável. Para encontrar tal solução com um número arbitrário de soldados basta conhecer alguns conceitos de potenciação, recorrências e indução finita.

A solução é bastante conhecida e está detalhada em diversos artigos e matérias na internet. O algoritmo a seguir trás todas as soluções de 1 até n, que representa o número de soldados que você escolher. Dessa forma, é possível notar o padrão e visualizar melhor a solução.

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main(){	
	int n, i, j, m[2][10000];
	printf("n = ");
	scanf("%i", &n);
	for(i = 2; i <= n; i++){
		m[0][i] = i;
		for(i = 2; i <= n; i++)
			for(j = 0; j < i; j++){	
				if(pow(2,j) <= i)
					m[1][i] = (2*(i - pow(2,j)) + 1);
			}
		printf("\nRESPOSTA: %i\n\n", m[1][n]);

		for(i = 2; i <= n; i++){
			printf("%i\t", i);
			printf("%i\n", m[1][i]);
		}
	}
	getch();
}

Inicialmente é definido n como o número de soldados, em seguida é calculado a maior potência de base 2 menor ou igual a número de soldados, chamaremos de J.

Ao conhecer J , basta fazer, 2(n – J) + 1.

ACESSO DA POPULAÇÃO IDOSA AOS SERVIÇOS DE SAÚDE OFERTADOS PELA ATENÇÃO PRIMÁRIA NO BRASIL

BREVIÁRIO ACADÊMICO #1

O acesso da população idosa aos serviços de saúde ofertados pela Atenção Primária tem papel essencial na obtenção e qualidade dos serviços ofertados. Sendo importante identificar barreiras que de alguma maneira limitem ou inviabilizem esse acesso, e para que se possa garantir o acesso universal e igualitário assegurado pela Lei 8.080 que regulamenta o Sistema Único de Saúde (SUS).

Com base em literaturas disponíveis, observa-se uma inacessibilidade das estruturas físicas das Unidades de Saúde (US), como, ausência de rampas, corrimão, banheiros adaptados, salas de esperas inadequadas, não proporcionando uma boa ambiência, demora no tempo de espera para o atendimento, o que muitas vezes incentiva a procura por planos de saúde privados.

Além disso, observa-se que há uma má distribuição das US dentro do território, principalmente na zona rural. Causando o distanciamento da residência do idoso e provocando mais demora e dificuldades no percurso de sua residência até a US. Também, verificaram-se inadequações das vias publicas que afetam o deslocamento autônomo e confortável do idoso, sendo expostos a riscos de quedas ou acidentes de trânsitos. Entre os problemas relatados os principais foram ausência de faixa de pedestres, buracos e escadarias nas calçadas e presença de esgotos no trajeto, breviário acadêmico.