輸入兩個ip區間段,判斷是否有交集【2018華為軟體崗位筆試題目】
問題:輸入兩個ip區間段,判斷是否有交集
Python3版解決方案
ip1 = input()
ip2 = input()
ip3 = input()
ip4 = input()
def transIp2Num(ip):
_1,_2,_3,_4 = ip.split('.')
num = int(_4)*1 + int(_3)*256 + int(_2) * 256 * 256 + int(_1) * 256 *256 *256
return num
ip1 = transIp2Num(ip1)
ip2 = transIp2Num(ip2)
ip3 = transIp2Num(ip3)
ip4 = transIp2Num(ip4)
if ip3>ip2 | ip4<ip1 :
print('沒有交集')
else:
print('有交集')
解釋一下
一個ip地址其實可以看作是一個四位的數字,只不過是256進位制的而已
例如:百度的IP 可以對應一個數字
61.135.169.121->1032300921
因此一個ip段就是一個區間了,接下來的問題就是比較兩個區間的交集問題了
so easy 了
題外話
其實下面的3個網址是一樣的,你可以點選試試。
http://1032300921
http://61.135.169.121/
http://www.baidu.com
相關推薦
輸入兩個ip區間段,判斷是否有交集【2018華為軟體崗位筆試題目】
問題:輸入兩個ip區間段,判斷是否有交集 Python3版解決方案 ip1 = input() ip2 = input() ip3 = input() ip4 = input() def transIp2Num(ip): _1,_2,_3,_4 = ip.split
2、編寫程式,從鍵盤上輸入兩個電阻的值,求它們並聯和串連的電阻值,輸出結果保留兩位小數。
#include <stdio.h> int main() { float R1,R2,Rc,Rb; printf("please input R1 R2\n");
輸入兩個遞增連結串列,合併為一個遞增連結串列(面試題)
輸入兩個遞增連結串列,合併為一個遞增連結串列。 public class LinkedTest { public static void main(String[] args) {
判斷兩個物件是否相同,判斷物件陣列中是否含有某個物件。
var json1 = { addroleData: [{ key:1, label:'一' },{
題目:兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽籤決定比賽名單。有人向隊員打聽比賽的名單,a說他不和x比,c說他不和x,z比,請程式設計序找出三隊賽手大的名單。
通過迴圈巢狀安排對戰順序,再用if語句判斷避免參賽的隊員重複,最後通過題目要求篩選出符合題意的對手。 public class Test18 { public static void main(String[] args) { char a,b,c; for(a = 'x'; a &l
Java 兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人
兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。 已抽籤決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比, 請程式設計序找出三隊賽手的名單。 方法一:(個人認為方法二更好理解) for(char i ='x';i<='
Java 兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人
兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。 已抽籤決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比, 請程式設計序找出三隊賽手的名單。 for(char i ='x';i<='z';i++){
Java:兩個乒乓球隊進行比賽,各出三人。甲隊為A、B、C三人,乙隊為X、Y、Z 三人,已經抽籤決定了比賽名單。已知A 不和X 比,C 不和X、Z 比,請問比賽名單是什麼。
兩個乒乓球隊進行比賽,各出三人。甲隊為A、B、C三人,乙隊為X、Y、Z 三人,已經抽籤決定了比賽名單。已知A 不和X 比,C 不和X、Z 比,請問比賽名單是什麼。 package com.jredu.ch0402.exer; /** * 兩個乒乓球隊進行比賽,各出三人。
兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽籤決定比賽名單
看到一個面試題 寫了玩玩 import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Map.E
【JAVA習題十五】兩個乒乓球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽籤決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請程式設計序找出三隊賽手的名單。
package erase; public class 選人比賽 { public static void main(String[] args) { // TODO Auto-generated method stub char A=0,B=0,C=0,str;
【2019新浪&微博筆試題目】判斷連結串列是否為迴文結構,空間負責度為O(1),時間複雜度為O(n)
原題描述 判斷一個連結串列是否為迴文結構,要求額外空間複雜度為O(1),時間複雜度為O(n) 解題思路 一、雙向連結串列 如果連結串列是雙向連結串列,那簡直不要太完美。直接從連結串列兩端向中間遍歷即可判定 可惜,這個題目肯定不會說的是這種情況,
2018華為軟體精英挑戰賽經驗分享,止步複賽,無緣決賽
程式碼開源於 github,如果覺得本文對你有幫助的話,請到 github點個贊再走哦! 今年的華為軟體精英挑戰賽終於結束了(大佬們去深圳決賽了),當時初賽賽區第5,進了複賽也沒能衝進前4(前4進決賽),也算有些遺憾吧。本文梳理下比賽思路,分享下
IP工具類:判斷兩個ip是否在同一個網段內,比較兩個ip的大小
import java.util.regex.Pattern; /** * IP地址範圍: 0.0.0.0~255.255.255.255,包括了mask地址。 IP地址劃分: * A類地址:1.0.0.1~126.255.255.254 B類地址:128.0.0.1~
輸入兩個整數序列,第一個序列表示棧的壓入順序,請判斷第二個序列是否為該棧的彈出順序
ack pan back 表示 return i++ ++ 輸入 gpo 1 class Solution{ 2 public: 3 bool IsPopOrder(vector<int> pushV,vector<int> popV){
編寫一個Java應用程式,當用戶在輸入對話方塊中輸入兩個日期後(日期格式為YYYYMMDD,如1999年1月12日應輸入為19990112),程式將判斷兩個日期的先後順序,以及兩個日期之間的間隔天數(例
編寫一個Java應用程式,當用戶在輸入對話方塊中輸入兩個日期後(日期格式為YYYYMMDD, 如1999年1月12日應輸入為19990112), 程式將判斷兩個日期的先後順序, 以及兩個日期之間的間隔天數(例如1999年1月1日和1999年1月2日之間的間隔是1天。
輸入兩個整數序列,第一個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應
輸入兩個整數序列,第一個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應 import java
彙編——從鍵盤輸入兩個字串,用串操作指令判斷是否相等
本文的程式碼示例是從鍵盤輸入兩個字串,然後藉助串操作指令 CMPSB 進行判斷。 CMPSB 指令的功能:用DS:[SI]所指的位元組單元內容減去ES:[DI]所指位元組單元內容,並且根據指令執行結果設定標誌位,然後根據DF的內容修改變址暫存器SI和DI的內容。若DF=,0,則根據串
如判斷這兩個IP是否屬於同一網段
教你一個手工判斷的方法,然後你就知道程式如何判斷了。 你把你的IP地址表達成 二進位制共有32位,再把子網掩碼錶達成二進位制共有32位, IP1:01010110110101010101011010101010 IP2:0101011
用Python寫一段程式碼,實現接收使用者輸入兩個的數字並輸出數字相加後的結果,要求使用者輸入任何內容程式不會報錯
分別採用基礎方法和異常處理方法實現。 基礎方法程式碼如下: num1 = input('請輸入數字1:') if num1.strip() == '': print('輸入錯誤。') exit() elif num1[0] != '.': for
java--封裝一類Java物件,使用者從輸入對話方塊輸入兩個日期,程式將判斷兩個日期的大小關係(比如輸出:您輸入的第二個日期大於第一個日期)以及兩個日期之間的間隔天數(比如輸出:2006年6月6日和
import java.util.*; public class Date { int year; int month; int day; public Date() {