Gym 100623A Access Control Lists

这个题很sb啊,就是去设置个交换机

我们可以给一个IP进行设置,也可以对一个网段就行设置,但是IP是优于网段的,比如样例的第一个

网段是什么呢,就是一个IP+子网掩码,这个IP的前x位2进制位为1,那么IP就是掩码为32

但是样例的问题要解决掉啊,就是先allow再deny也可以的,所以就设置一个标记好了,deny就是负的

非常巧妙地解决了这个问题,dreamoon牛逼

#include<bits/stdc++.h>
using namespace std;
#define ui unsigned int
ui ip;
map<ui,int>H[];
int main()
{
freopen("access.in","r",stdin);
freopen("access.out","w",stdout);
ios::sync_with_stdio(false),cin.tie(),cout.tie();
int n,q;
cin>>n;
string s1,s2,s;
for(int i=,x; i<=n; i++)
{
cin>>s1>>s2>>s;
for(int j=; s[j]; j++)if(s[j]<''||s[j]>'')s[j]=' ';
int tot=,flag,a[];
stringstream ss(s);
while(ss>>a[tot])tot++;
flag=tot>?a[]:,ip=;
for(int j=; j<; j++)ip=ip<<|a[j];
if(!H[flag].count(ip))
{
if(s1[]=='d')H[flag][ip]=-i;
else H[flag][ip]=i;
}
}
cin>>q;
for(int i=,x; i<q; i++)
{
cin>>s;
for(int j=; s[j]; j++)if(s[j]<''||s[j]>'')s[j]=' ';
stringstream ss(s);
ip=;
while(ss>>x)ip=ip<<|x;
int res=;
for(int j=; j>=; j--)
{
if(H[j].count(ip)&&abs(res)>abs(H[j][ip]))res=H[j][ip];
ip^=((ip>>(-j))&)<<(-j);
}
cout<<(res>?'A':'D');
}
return ;
}

Gym100623A Access Control Lists的更多相关文章

  1. Phalcon 訪问控制列表 ACL(Access Control Lists ACL)

    Phalcon在权限方面通过 Phalcon\Acl 提供了一个轻量级的 ACL(訪问控制列表). Access Control Lists (ACL) 同意系统对用户的訪问权限进行控制,比方同意訪问 ...

  2. [笔记] Access Control Lists (ACL) 学习笔记汇总

    一直不太明白Windows的ACL是怎么回事,还是静下心来看一手的MSDN吧. [翻译] Access Control Lists [翻译] How Access Check Works Modify ...

  3. zookeeper ACL(access control lists)权限控制

    基本作用:        针对节点可以设置 相关读写等权限,目的为了保障数据安全性        权限permissions可以制定不同的权限范围以及角色 一:ACL构成         zk的acl ...

  4. Browser security standards via access control

    A computing system is operable to contain a security module within an operating system. This securit ...

  5. A GUIDE TO UNDERSTANDINGDISCRETIONARY ACCESS CONTROL INTRUSTED SYSTEMS

    1. INTRODUCTION   The main goal of the National Computer Security Center is to encourage the widespr ...

  6. Method and system for implementing mandatory file access control in native discretionary access control environments

    A method is provided for implementing a mandatory access control model in operating systems which na ...

  7. Enabling granular discretionary access control for data stored in a cloud computing environment

    Enabling discretionary data access control in a cloud computing environment can begin with the obtai ...

  8. 转:Oracle R12 多组织访问的控制 - MOAC(Multi-Org Access Control)

    什么是MOAC MOAC(Multi-Org Access Control)为多组织访问控制,是Oracle EBS R12的重要新功能,它可以实现在一个Responsibility下对多个Opera ...

  9. Oracle Applications Multiple Organizations Access Control for Custom Code

    档 ID 420787.1 White Paper Oracle Applications Multiple Organizations Access Control for Custom Code ...

随机推荐

  1. HDU5200 数据离线处理

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5200 ,数据离线处理. 这是BestCoder Round #36的C题,比赛时自己用线段树做,姿势不 ...

  2. hdu-1233 还是畅通工程---MST模板

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1233 题目大意: 求MST最小生成树 解题思路: Prim算法直接套即可 #include<b ...

  3. 【BZOJ3940】[USACO2015 Feb] Censoring (AC自动机的小应用)

    点此看题面 大致题意: 给你一个文本串和\(N\)个模式串,要你将每一个模式串从文本串中删去.(此题是[BZOJ3942][Usaco2015 Feb]Censoring的升级版) \(AC\)自动机 ...

  4. SVN .a文件丢失问题

    只需2张图 这样就ok 了

  5. 2018.2.2 JavaScript中的封装

    JavaScript中的封装 1.封装的概念 通过将一个方法或者属性声明为私用的,可以让对象的实现细节对其他对象保密以降低对象之间的耦合程度,可以保持数据的完整性并对其修改方式加以约束,这样可以使代码 ...

  6. python_21_copy

    import copy person=['name',['saving',100]] #3种浅copy方式 p1=copy.copy(person) p2=person[:] p3=list(pers ...

  7. C#自增运算符(++)

    一.C#自增运算符(++) 自增运算符(++)是将操作数加1. 1. 前缀自增运算符 前缀自增运算符是“先加1,后使用”.它的运算结果是操作数加1之后的值. 例如: ++x;  // 前缀自增运算符 ...

  8. java web用户登录界面

    做这次实验,主要用到了mysql  java web 的 内容 实验代码: IUserDao.java package com.jaovo.msg.dao; import java.util.List ...

  9. SpringBoot学习2:springboot整合servlet

    整合方式1:通过注解扫描完成 Servlet 组件的注册 1.编写servlet package com.bjsxt.servlet; import javax.servlet.ServletExce ...

  10. Oracle10g安装过程中的Configuration Assistant配置失败的问题。

    前几天安装Oracle的时候碰到了一个小问题,是在最后配置的时候,出现失败提示如下 失败提示:一些 Configuration Assistant 失败.强烈建议您此时重试这些 Configurati ...