Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.60 KB | None | 0 0
  1. /* Nome: Henrique Eustaquio Lopes Ferreira
  2. *  Matricula: 2015068990
  3. *  Problema resolvido: Engarrafamento
  4. *  Roteiro 6 - Problema 2
  5. *  Estratégias: a cada novo caso de teste, foi necessária a criação de um grafo que correspondia
  6. *  aos dados informados (a implementação de grafo escolhida foi a classe, que possui uma lista de
  7. *  adjacência de pares de inteiros, vértice/peso). Nota-se que os grafos possuem arestas unidirecionais.
  8. *  Assim, tendo como base o algoritmo de Djikstra, implementou-se uma fila de prioridades, que considera
  9. *  um vector de pares de inteiros a partir do comparador greater. Essa fila auxiliar é inicializada com
  10. *  distâncias infinitas (INF) e preenchida com as respectivas menores distâncias do vértice atual ao informado
  11. *  como ponto de partida, além de ser atualizada conforme são calculadas as distâncias relativas dos caminhos.
  12. */
  13. #include <algorithm>
  14. #include <bitset>
  15. #include <cmath>
  16. #include <cstdio>
  17. #include <cstdlib>
  18. #include <cstring>
  19. #include <iomanip>
  20. #include <iostream>
  21. #include <map>
  22. #include <queue>
  23. #include <set>
  24. #include <stack>
  25. #include <string>
  26. #include <utility>
  27. #include <vector>
  28. #include <list>
  29. using namespace std;
  30. #define sz(a) int((a).size())
  31. #define pb push_back
  32. #define mp make_pair
  33. #define p push
  34. #define all(c) (c).begin(),(c).end()
  35. #define tr(c,i) for(typeof((c).begin()) i = (c).begin(); i != (c).end(); i++)
  36. #define present(c,x) ((c).find(x) != (c).end())
  37. #define cpresent(c,x) (find(all(c),x) != (c).end())
  38. #define sc(a) scanf("%d", &a)
  39. #define sc2(a, b) scanf("%d%d", &a, &b)
  40. #define sc3(a, b, c) scanf("%d%d%d", &a, &b, &c)
  41. #define scs(a) scanf("%s", a)
  42. #define pri(x) printf("%d\n", x)
  43. #define prie(x) printf("%d ", x)
  44. #define BUFF ios::sync_with_stdio(false);
  45. #define db(x) cerr << #x << " == " << x << endl
  46. #define fr(i, L) for(int i = 0; i < L; i++)
  47. typedef long long int ll;
  48. typedef long double ld;
  49. typedef pair<int, int> ii;
  50. typedef vector<int> vi;
  51. typedef vector<vector<int> > vvi;
  52. typedef vector<ii> vii;
  53. typedef vector< vii> vvii;
  54. const int INF = 0x3f3f3f3f;
  55. const ll LINF = 0x3f3f3f3f3f3f3f3fll;
  56. const ld pi = acos(-1);
  57. const int MOD = 1e9 + 9;
  58.  
  59. using namespace std;
  60.  
  61.  
  62. int main(void) {
  63.     ll valor_final;
  64.     char palavra[61];
  65.     int teste = 1;
  66.  
  67.     while(scanf("%s", palavra) != EOF) {
  68.         valor_final = 0;
  69.  
  70.         for(int i = 0; palavra[i] != '\0'; i++) {
  71.             if(palavra[i] == 'b') {
  72.                 valor_final += pow(2, (int)strlen(palavra)-(i+1));
  73.                 //printf("strlen = %d\n", (int)strlen(palavra)-(i+1));
  74.             }
  75.         }
  76.  
  77.         printf("Palavra %d\n", teste++);
  78.         printf("%lld\n", valor_final);
  79.     }
  80.  
  81.     return 0;
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement