Bandwidth

2023-12-27 03:08
文章标签 bandwidth

本文主要是介绍Bandwidth,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

看吧 你个懒蛋

#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
int map[26][26] = {};
int app[26] = {}, n;
int set[26] = {}, tmp[26];
int way[26] = {}, used[26] = {};
int ans;
int dfs(int idx) {if(idx == n) {int i, j;int bandwidth = 0;for(i = 0; i < n; i++) {for(j = 0; j < 26; j++) {if(map[app[i]][j]) {if(abs(set[app[i]] - set[j]) > bandwidth)bandwidth = abs(set[app[i]] - set[j]);}}}if(bandwidth < ans) {ans = bandwidth;memcpy(way, tmp, sizeof(way));}return 0;}int i;for(i = 0; i < n; i++) {if(used[i] == 0) {used[i] = 1;tmp[idx] = app[i];set[app[i]] = idx;dfs(idx+1);used[i] = 0;}}
}
int main() {char s[100];int i, j, st, ed;while(scanf("%s", s) == 1) {if(!strcmp(s, "#"))break;memset(map, 0, sizeof(map));int len = strlen(s), used[26] = {};n = 0;for(i = 0; i < len; i++) {st = s[i]-'A';if(used[st] == 0) {used[st] = 1;app[n++] = st;}j = i+2;while(s[j] != ';' && s[j] != '\0') {ed = s[j]-'A';map[st][ed] = 1;if(used[ed] == 0) {used[ed] = 1;app[n++] = ed;}j++;}i = j;}std::sort(app, app+n);ans = 0xffff;dfs(0);for(i = 0; i < n; i++)printf("%c ", way[i]+'A');printf("-> %d\n", ans);}return 0;
}


#include<cstdio>
#include<cstring>
#include<vector>
#include<algorithm>
using namespace std;const int maxn = 10;
int id[256], letter[maxn];int main() {char input[1000];while(scanf("%s", input) == 1 && input[0] != '#') {// 计算结点个数并给字母编号int n = 0;for(char ch = 'A'; ch <= 'Z'; ch++)if(strchr(input, ch) != NULL) {// id['A'] = 0 依次类推id[ch] = n++;// letter[0] = 'A' 依次类推letter[id[ch]] = ch;}// 处理输入int len = strlen(input), p = 0, q = 0;vector<int> u, v;for(;;) {while(p < len && input[p] != ':') p++;if(p == len) break;while(q < len && input[q] != ';') q++;for(int i = p+1; i < q; i++) {// u[i]->v[i]为邻接边// 找到顶点u.push_back(id[input[p-1]]);// 找到邻接点v.push_back(id[input[i]]);}p++; q++;}// 枚举全排列int P[maxn], bestP[maxn], pos[maxn], ans = n;for(int i = 0; i < n; i++) P[i] = i;do {for(int i = 0; i < n; i++) pos[P[i]] = i; // 每个字母的位置int bandwidth = 0;for(int i = 0; i < u.size(); i++)bandwidth = max(bandwidth, abs(pos[u[i]] - pos[v[i]])); // 计算带宽if(bandwidth < ans) {ans = bandwidth;memcpy(bestP, P, sizeof(P));}} while(next_permutation(P, P+n));// 输出for(int i = 0; i < n; i++) printf("%c ", letter[bestP[i]]);printf("-> %d\n", ans);}return 0;
}

    #include <iostream>  #include <cstdio>  #include <cstdlib>  #include <cctype>  #include <cstring>  #include <string>  #include <sstream>  #include <vector>  #include <set>  #include <map>  #include <algorithm>  #include <stack>  #include <queue>  #include <bitset>   #include <cassert>   #include <cmath>  #include <functional>  using namespace std;  const int maxn = 10;  int id[256], letter[maxn];  char input[1000];  int n;  void init() // 计算结点的个数并给字母编号  {  n = 0;  for (char ch = 'A'; ch <= 'Z'; ch++) {  if (strchr(input, ch) != NULL) {  id[ch] = n++;  letter[id[ch]] = ch;  }  }  }  // 处理输入  vector <int> u, v;  void readInput()  {  int len = strlen(input);  int p = 0, q = 0;  u.clear();  v.clear();  while (1) {  while (p < len && input[p] != ':') {  p++;  }  if (p == len) {  break;  }  while (q < len && input[q] != ';') {  q++;  }  for (int i = p + 1; i < q; i++) {  u.push_back(id[input[p - 1]]);  v.push_back(id[input[i]]);  }  p++;  q++;  }  }  // 枚举全排列  void solve()  {  int P[maxn], bestP[maxn], pos[maxn], ans = n;  for (int i = 0; i < n; i++) {  P[i] = i;  }  do {  for (int i = 0; i < n; i++) {  pos[P[i]] = i; // 每个字母的位置  }  int bandwidth = 0;  for (int i = 0; i < u.size(); i++) {  bandwidth = max(bandwidth, abs(pos[u[i]] - pos[v[i]])); // 计算带宽  }  if (bandwidth < ans) {  ans = bandwidth;  memcpy(bestP, P, sizeof(P));  }  } while (next_permutation(P, P + n));  // 输出  for (int i = 0; i < n; i++) {  cout << (char)letter[bestP[i]] << ' ';  }  cout << "-> " << ans << endl;  }  int main()  {  while (cin >> input && input[0] != '#') {  init();  readInput();  solve();  }  return 0;  }  


这篇关于Bandwidth的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/541707

相关文章

A Deep Neural Network Approach To Speech Bandwidth Expansion

题名:一种用于语音带宽扩展的深度神经网络方法 作者:Kehuang Li;Chin-Hui Lee 2015年出来的 摘要   本文提出了一种基于深度神经网络(DNN)的语音带宽扩展(BWE)方法。利用对数谱功率作为输入输出特征进行所需的非线性变换,训练神经网络来实现这种高维映射函数。在10小时的大型测试集上对该方法进行评估时,我们发现与传统的基于高斯混合模型(GMMs)的BWE相比,DNN扩展

HBM(High Bandwidth Memory)

选择正确的高带宽内存 构建高性能芯片的选择越来越多,但附加内存的选择却几乎没有变化。为了在汽车、消费和超大规模计算中实现最大性能,选择取决于一种或多种 DRAM,而最大的权衡是成本与速度。 尽管多年来人们一直在努力用更快、更便宜或更通用的内存来取代 DRAM,甚至将其嵌入到 SoC 中,但 DRAM 仍然是所有这些架构中的重要组成部分。但 DRAM 制造商并没有停滞不前,而是根据性能

NetHogs - Monitor Per Process Network Bandwidth Usage in Real Time

原文链接:http://www.tecmint.com/nethogs-monitor-per-process-network-bandwidth-usage-in-real-time/ Linux operating systems have tons of open source network monitoring tools on the web. Say, you can use

adobe上的fms的bandwidth说明

今天看了篇adobe官方上的一篇介绍fms的带宽销耗的介绍.由 Chris Hock写的.不过里面还是fcs时的.我这个特懒,翻译就不翻译了.说明一下吧. 分这几种情况: 1.一对多的. 不过这个一是指flv文件,服务器端的销耗是 BWs = N * S    bws就是带宽  n是连接的人数,s是flv文件的编码,默认的好像都是100 kbps. 客户端的销耗是: BWc =  S

【5G PHY】5G BWP(BandWidth Part)介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客内容主要围绕:        5G/6G协议讲解        算力网络讲解(云计算,边缘计算,端计算)        高级C语言讲解        Rust语言讲解

【5G PHY】5G BWP(BandWidth Part)介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客内容主要围绕:        5G/6G协议讲解        算力网络讲解(云计算,边缘计算,端计算)        高级C语言讲解        Rust语言讲解