Pessoal, eu estou implementando o algoritmo de dijkstra para resolver um problema da olimpíada brasileira de informática, mas não consigo compilar o programa porque há um erro que não consigo entender porque está ocorrendo nas linhas 43, 44 e 45, que no caso é:
error: invalid types 'int[int]' for array subscript
Aqui está o código completo em C++11:
#include <bits/stdc++.h>
#define mkp make_pair
using namespace std;
const int MAXN = 1010, INF = 0x3f3f3f3f;
int n, m, p[MAXN], dist[MAXN];
vector<pii> g[MAXN];
typedef pair<int, int> pii;
void Dijkstra(int s){
memset(dist, INF, sizeof dist);
dist[s] = 0;
priority_queue< pii, vector<pii>, greater<pii> > fila;
fila.push(mkp(dist[s], s));
while(true){
int davez = -1, menor = INF;
while(!fila.empty())
{
int atual = fila.top().second;
fila.pop();
if (!p[atual])
{
davez = atual;
break;
}
}
if (davez == -1) break;
p[davez] = 1;
for(int i = 0; i < (int) g[davez].size(); i++){
int dist = g[davez][i].first, atual = g[davez][i].second;
if (dist[atual] > dist[davez] + dist)
{
dist[atual] = dist[davez] + dist;
fila.push(mkp(dist[atual], atual));
}
}
}
}
int main(){
int u, v, b;
scanf("%d %d", &n, &m);
for(int i = 0; i < m; i++){
scanf("%d %d %d", &u, &v, &b);
g[u].push_back(mkp(b, v));
}
Dijkstra(0);
printf("%d\n", dist[n+1]);
}
Estou tentando rodar um projeto de um jogo na minha maquina porem o mesmo pede para adicionar o log4cxx 0.10.0, realizei pesquisas na internet a respeito mas até agora nada, Encontre para baixar nesse site https://logging.apache.org/log4cxx/1.0.0/download.html porem não sei se devo instalar ele no windows porque ao exportar ele no projeto as depêndencias que precisam dele ficam informando o erro log4cxx.logger.h no such file or directory. a linguagem que estou usando e C++
$usuarios= "SELECT * FROM usuarios";
$query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
$usuario = mysqli_fetch_array($query);
Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
Existe uma forma de fazer um IF na select e comparar com Array de dados?
algo como
Select
if(
in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não')
) as cliente
Não consigo usar inner ou where pois esse array é algo q tem varias regras...
Precisava saber se existe uma função assim em MySQL
Existe uma forma de fazer um IF na select e comparar com Array de dados?
algo como
Select
if(
in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não')
) as cliente
Não consigo usar inner ou where pois esse resultado do array é algo q tem varias regras...
Precisava saber se existe uma função assim em MySQL
Bom dia.
Meu problema é o seguinte:
Estou fazendo uma tabela e preciso mostrar o usuário e várias cidades que pertencem a este usuário.
O resultado do array é o seguinte:
Quando passo para a tabela os valores de cidade se repetem para o mesmo usuário até o final e retorna fazendo o mesmo para o próximo usuário.
Veja abaixo
Meu código para a tabela é a seguinte:
<tr>
<td align="left"><?php echo $usuario['nome'] ?></td>
<td align="left"><?php echo $usuario['nome_orgao'] ?></td>
<td align="left"><?php echo $usuario['nome_funcao'] ?></td>
<?php foreach($destinos as $key=>$destino):?>
<?php $key=0;?>
<td align="left">
<?php foreach($destino as $chave=> &$cidade): ?>
<?php echo $cidade['cid_nome']."-";?>
<?php endforeach;?>
</td>
<?php $key+=$key; ?>
<?php endforeach;?>
<td><?php echo date('d/m/Y', strtotime( $usuario['created_at'])) ?></td>
<td align="left"><a href="<?php echo base_url('UserAdmin/Usuario/getUsuarioById')."/".$usuario['id_user'] ?>">DETALHES</a></td>
</tr>
<?php endforeach ?>
Onde estou errando? O que tenho de fazer para percorrer este array de modo a aparecer apenas as cidades pertencentes a cada usuário?
Pessoal, eu estou implementando o algoritmo de dijkstra para resolver um problema da olimpíada brasileira de informática, mas não consigo compilar o programa porque há um erro que não consigo entender porque está ocorrendo nas linhas 43, 44 e 45, que no caso é:
error: invalid types 'int[int]' for array subscript
Aqui está o código completo em C++11:
Compartilhar este post
Link para o post
Compartilhar em outros sites