LeetCodeWeeklyContest-178

2024-01-01 06:48
文章标签 178 leetcodeweeklycontest

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

178周赛

rank:1112 / 3304
ac:2/4
score:7/19

有多少小于当前数字的数字

签到题,暴力即可

通过投票对团队排名

其实就是统计一下在各个名次的次数,然后排下序即可。

int len,n;
int cnt[26+1][1005];
bool cmp(int a,int b){for(int i=0;i<n;i++){if(cnt[a][i]!=cnt[b][i]) return cnt[a][i]>cnt[b][i];}return a<b;
}
class Solution {
public:string rankTeams(vector<string>& votes) {memset(cnt,0,sizeof(cnt));len = votes.size(),n = votes[0].length();if(len==1||n==1) return  votes[0];for(int i=0;i<len;i++){for(int j=0;j<n;j++){cnt[votes[i][j]-'A'][j]++;}}vector<int> ch(n);for(int i=0;i<n;i++){ch[i] = votes[0][i]-'A';}sort(ch.begin(),ch.end(),cmp);string res;for(int i=0;i<n;i++){res += 'A'+ch[i];}return res;}
};

二叉树中的列表

其实就是判断是不是子树,双重dfs
类似 :剑指Offer :树的子结构

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:bool isSubPath(ListNode* head, TreeNode* root) {if(root==NULL) return false;return check(head,root)||isSubPath(head,root->left)||isSubPath(head,root->right);}bool check(ListNode* head, TreeNode* root){if(head==NULL) return true;if(root==NULL) return false;return head->val==root->val&&(check(head->next,root->left)||check(head->next,root->right));}
};

使网格图至少有一条有效路径的最小代价

参考:SPFA——BFS的一种扩展

class Solution {
public:bool isok(int x,int y,int m ,int n){return x>=0&&x<m&&y>=0&&y<n;}int minCost(vector<vector<int>>& g) {int dis[150][150],vis[150][150];int m = g.size(),n = g[0].size();int dx[5]={0,0,0,1,-1},dy[5]={0,1,-1,0,0};memset(dis,0x3f3f,sizeof(dis));memset(vis,0,sizeof(vis));queue<pair<int,int>> qu;qu.push(make_pair(0,0)); vis[0][0]=1,dis[0][0]=0;while(!qu.empty()){int xx = qu.front().first,yy = qu.front().second;qu.pop(); vis[xx][yy] = 0;for(int i=1;i<=4;i++){int xto = xx+dx[i],yto = yy + dy[i];if(isok(xto,yto,m,n)){int tmp = 0;if(g[xx][yy]==i) tmp = dis[xx][yy];else tmp = dis[xx][yy]+1;if(tmp<dis[xto][yto]){dis[xto][yto] = tmp;if(!vis[xto][yto]){qu.push(make_pair(xto,yto));vis[xto][yto] = 1;}}}}}return dis[m-1][n-1];}
};

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



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

相关文章

leetcode解题思路分析(二十五)178 - 185题

分数排名 编写一个 SQL 查询来实现分数排名。 如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。 MySQL常用窗口函数有rank, dense_rank, row_number, 区别在于第一个对同样数据会并列排行,后面的会+n,而第二个则只会+1,第三个就单纯顺序排行,没有并列关系 # Write

178.二叉树:最大二叉树(力扣)

代码解决 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(in

我是怎么从30个并发平均每个2000毫秒 到 300个并发平均每个178毫秒的

最近一个多月一直在做服务器的性能优化,老大的要求是要做到300个并发,控制在200毫秒以内,就说说我最近做的内容吧。 从30个并发平均每个2000毫秒 到 300个并发平均每个178毫秒 简单介绍一下做了那些优化: 01、减少log日志的打印 02、减少redis的交互 03、耗时操作的处理 04、大文件信息的存储 05、python的缓存机制 06、异步处理非返回操作 一、定位耗时操作 --

[LeetCode] 178. 分数排名

题目:编写一个sql语句来实现分数排名,如果两个分数相同,则两个分数排名(Rank)相同,而且下一个名次应该是下一个连续的整数值,也就是说,名次之间不能有间隔。 +----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4 | 3.85 || 5 | 4.00 || 6 | 3.

[SQL] LeetCode 178. 分数排名 - [Medium]

178. 分数排名 题目: 编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。 +----+-------+| Id | Score |+----+-------+| 1 | 3.50 || 2 | 3.65 || 3 | 4.00 || 4

[管理者与领导者-178] :沟通 - 如何高效开会心得分享

目录 前言: 一、管理者为什么要开会 二、会议的种类 三、会议的形式 四、高效开会 4.1 概述 4.2 把控会议的节奏 五、管理者如何让开发人员不抵触、不感觉开会是浪费时间 六、开会的目的不是为了管理者的管理,而是为了团队增加价值 前言: 开会时管理者传递思想、资源调度、任务调度最重要的形式之一,会议的高效性是管理高效性最重要的体现之一,如果高效开会呢? 一、管理

ACWING 178. 第K短路(A*算法)

思路: k k k短路模板题。 引入估值函数 d ( x ) d(x) d(x)代表从 x x x出发到终点的最短距离,这可以通过反向最短路求出来。维护 f ( x ) f(x) f(x)代表起点出发到 x x x点的最短距离。 A ∗ A* A∗算法中堆中每次取出最小的 f ( x ) + d ( x ) f(x)+d(x) f(x)+d(x)对应的点进行松弛。这样一个点第 k k k次出

Qt Creator编译时出现“QtCore\qstringview.h:178: error: C1001: 编译器中发生内部错误”

一、Qt Creator编译时出现下面的运行错误: C:\Qt\Qt5.10.1\5.10.1\msvc2013_64\include\QtCore\qstringview.h:178: error: C1001: 编译器中发生内部错误。 二、原因及解决方法: 1、原因是新装的VS组件需要升级才行。 2、更新VS相关组件方法: VS菜单栏:工具–>扩展和更新–>更新–>右侧选择需要更新的。我这里

白领自危:178家企业大裁员 20个行业不景气

对于中国的白领阶层来说,全球金融危机已经不只是一则爆炸性新闻,而演变成了关乎自己生计的切身“威胁”。   近日,一份列举了22家跨国企业、40家国内大中型企业、116家国内中小型企业的“大裁员第一波”企业名单,正通过各大公司的企业邮箱在上海、北京、深圳等地的白领中传播。同时,一个标题为“金融危机十项注意”的帖子也在网上盛传。   3份“大裁员企业”名单   11月2日上午,在上海

蓝桥杯刷题 深度优先搜索-[178]全球变暖(C++)

题目描述 你有一张某海域 N×N 像素的照片,”.”表示海洋、”#”表示陆地,如下所示: … .##… .##… …##. …####. …###. … 其中”上下左右”四个方向上连在一起的一片陆地组成一座岛屿,例如上图就有 2 座岛屿。 由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。 具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋