三元

三元表达式

折月煮酒 提交于 2019-12-02 00:12:17
小程序: <view bindtap="viewClick">展开</view> <view class="profile {{ viewall ? 'alltext' : '' }}"> {{text}} </view> Page({ data: { viewall: false, }, viewClick:function(e) { this.setData({ viewall: !this.data.viewall }) } }) 来源: https://www.cnblogs.com/deajax/p/11722548.html

三元环题解

吃可爱长大的小学妹 提交于 2019-12-01 10:21:42
我不知道为什么之前两个月没写一篇博客今天就要写两篇 可能是因为今天晚饭吃的比较饱心情舒畅 题目: 输入一个有向图的邻接矩阵,求有多少个三元环(A到B,B到C,C又回A) Input 第一行给出数字N,3<=N<=1500.接下来N行N列给出数字矩阵 Output 如题 Sample Input 4 --+- +--+ -+-- --+- Sample Output 2 大意是给你一个邻接矩阵让你求三元环个数,给你的邻接矩阵i行j列的‘+’代表i和j之间有一条边 然后你就会了 后来看数据发现有的数据存在点可以跟自己连边,我之前加的傻逼剪枝是错的 然后我还算了下时间复杂度发现我就算不加这个傻逼剪枝我也会T掉 然后我还惊恐的发现要开long long 败 者 食 尘 我就学了一种傻逼结构叫做bitset,可以理解为一个bool数组,但是只能进行位运算,运算时间,占用空间比普通数组小很多 bitset中a(i,j)代表以i为起点且以j为终点的边是否存在 b(i,j)代表i为终点j为起点的边是否存在 然后再并一下,代表合并两条边,可以感性理解一下 #include<bits/stdc++.h> #define ll long long using namespace std; char mp[2010][2010];ll n,ans; bitset<2010>a[2010],b[2010]

三元环 bitset入门

ぃ、小莉子 提交于 2019-12-01 10:14:33
题目: 三元环 (three.cpp/in/out 2s 256M) 输入一个有向图的邻接矩阵,求有多少个三元环(A到B,B到C,C又回A) '+'表示从第i行指向第j列的有向图( 表示i到j ),'-'无任何意义 Input 第一行给出数字N,3<=N<=1500.接下来N行N列给出数字矩阵 Output 如题 Sample Input 4 --+- +--+ -+-- --+- Sample Output 2 开两个bitset数组a[i]和b[i]。对于从i指向j的边, 我们令a[i][j]=1,b[j][i]=1,表示i→j存在,j→i也存在,这样 a[i]表示从i发出 的终点的集合, b[i]表示到达i的边 的起点的集 合。然后枚举边,对于边i→j,只要将a[j]和 b[i]并起来就是与这条边构成三元环的点集, 统计这些点集中点的个数ans,因为每个三元 环都要重复计算三遍,所以最后答案是ans/3 a[i]即为从i发出的点的集合,b[j]即为j接收到的点的集合 a[j]&b[i] 表示中间的枚举点k,以i→k→j→i构成的三元环, 这样的k会被我们枚举三遍 , 因为i,j也可以为K,同理k也可为i,j 图示如下: code: 1 #include<bits/stdc++.h> 2 using namespace std; 3 bitset<1510> a[1510],b

python函数 | 三元运算

混江龙づ霸主 提交于 2019-12-01 06:09:53
三元运算符就是在赋值变量的时候,可以直接加判断,然后赋值 格式: [on_true] if [expression] else [on_false] 三元运算只适用于简单的if else判断,再多一层if判断就不适用了。 举例说明:比大小,大者返回 写一个函数 def max_min(a,b): if int(a) > int(b): return a else: return b print(max_min(1,3)) 三元运算 def max_min(a,b): z = a if a > b else b return z 再进一步简写 def max_min(a,b): return a if a > b else b 来源: https://www.cnblogs.com/Summer-skr--blog/p/11664065.html

13 三元运算

梦想与她 提交于 2019-12-01 04:57:14
三元运算又称三目运算,是对简单的条件语句的简写 简单的条件语句: if 条件成立: val = 1 else: val = 2 改成三元运算: val = 1 if 条件成立 else val = 2 来源: https://www.cnblogs.com/shibojie/p/11656339.html

经常使用的js三元表达式

左心房为你撑大大i 提交于 2019-11-29 12:39:55
语法:条件?表达式1:表达式2 。 条件的括号可要可不要的 let istrue = true; let a = (istrue === true) ? '我是true啊' : "我是false啊"; console.log(a) //我是true啊 let b = ''; (istrue === false) ? b = '我是true啊': b = '我是false啊'; console.log(b)//我是false啊 来源: https://www.cnblogs.com/lwming/p/11518068.html

三元式+改变时间格式

随声附和 提交于 2019-11-29 11:22:01
三元式+改变时间格式 e.Row.Cells[0].Text = (((DataRowView)e.Row.Datatem).Row["Timestamp"]) == DBNull.Value ? string.Empty : ((DateTime)((DataRowView)e.Row.DataItem).Row["Timestamp"]).ToString("yyyy/M/d H:m:s"); ↑三元式:?左边是判断条件,如果成立则执行:左边,不成立则执行:右边,和if写法道理相通 ↑对GridView内容改变时间格式的方法也可注意一下 //String.Empty是空白字符串的意思,DBNull.Value意如果数据表的数据是Null 原文: 大专栏 三元式+改变时间格式 来源: https://www.cnblogs.com/chinatrump/p/11516317.html

LeetCode--015--三元之和(java)

穿精又带淫゛_ 提交于 2019-11-29 04:40:56
给定一个包含 n 个整数的数组 nums ,判断 nums 中是否存在三个元素 a,b,c , 使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]i做主线的遍历,从头至尾寻找满足条件的其他两个数字。 class Solution { public List<List<Integer>> threeSum(int[] nums) { List<List<Integer>> res = new ArrayList<>(); Arrays.sort(nums); for(int i = 0;i < nums.length-2;i++){ if(i > 0 && nums[i] == nums[i - 1])continue;//一定要加这一句,否则会重复,所给例子会输出两个[-1,1,0] int low = i + 1,high = nums.length-1,sum = 0 - nums[i]; while(low < high){ if(nums[low] + nums[high] == sum){ res.add(Arrays.asList(nums[i],nums

选择结构

吃可爱长大的小学妹 提交于 2019-11-29 03:35:35
三元表达式 最佳实践:分支较少、表达式简单的情况下。 package org . jgs1904 ; import java . util . Scanner ; /** * 选择结构 * 三元表达式 * 最佳实践:分支较少、表达式简单的情况下 * * @author Renyw * @date 2019年11月11日 */ public class Demo1 { public static void main ( String [ ] args ) { Scanner input = new Scanner ( System . in ) ; System . out . println ( "请输入四位会员卡号:" ) ; int cardId = input . nextInt ( ) ; System . out . println ( cardId ) ; input . close ( ) ; int sum = cardId % 10 + cardId / 10 % 10 + cardId / 100 % 10 + cardId / 1000 ; System . out . println ( sum ) ; System . out . println ( sum > 24 ? "中奖" : "未中奖" ) ; } } if … else … 最佳实践

说说三元运算和if...else的相同之处

我与影子孤独终老i 提交于 2019-11-28 05:53:19
三元运算符和if-else语句:不同之处。   a) 三元运算符是必须要有返回值,而if-else语句并不一定有返回值,其执行结果可能是赋值语句或者打印输出语句。   b) java三元表达式有字符强转(双目数值提升)的功能,返回值类型为两个返回值中类型精度更高的的那个类型     1) 在java中常见数据类型其范围从小到大(精度由低到高):byte<short<char<int<float<double。     2) jvm在给数值分配数据类型的时候会选取刚好能装下该数据大小精度的数据类型进行分配(如99.0为float,99为byte/short)   c) 三元表达式的性能更好。   d) 举例:     下面用一段代码来解释三元表达式的字符强转功能,以下测试代码也涵盖了很多面试题目,希望各位可以从中理解上述三条规则。     char a=‘a‘;     int i=96;     //规则1,定义了数据类型的变量与未定义变量的数值     System.out.println(2==2?i:9.0); //返回96.0     //jvm给9.0分配数据类型为float,所以返回值类型为float     System.out.println(2==2?98:a); //返回b     //jvm给98分配数据类型为byte/short,所以返回值类型为byte