这题真是“容易”。呵呵呵。

  参考题解:xyz32768

  代码

  

#include<cstdio>
#include<map>
#include<algorithm>
#include<cctype>
#define mod 1000000007
using namespace std;
map<long long,bool> vis;
inline long long read(){
long long num=,f=;
char ch=getchar();
while(!isdigit(ch)){
if(ch=='-') f=-;
ch=getchar();
}
while(isdigit(ch)){
num=num*+ch-'';
ch=getchar();
}
return num*f;
} inline long long mul(long long a,long long b){
long long ret=;
if(b==) return a;
while(b){
if(b&) ret=(ret+a)%mod;
a=(a+a)%mod;
b>>=;
}
return ret;
} inline long long Pow(long long a,long long b){
long long ret=;
if(b==) return a;
while(b){
if(b&) ret=mul(ret,a);
a=mul(a,a);
b>>=;
}
return ret;
} long long s[]; struct Line{
long long x,y;
bool operator <(const Line &a)const{
if(x!=a.x) return x<a.x;
return y<a.y;
}
}w[];
long long tot;
int main(){
freopen("in.txt","r",stdin);
freopen("out1.txt","w",stdout);
long long n=read(),m=read(),q=read();
long long sum;
if(n&) sum=mul((+n)>>,n);
else sum=mul(+n,n>>);
for(long long i=;i<=q;++i) s[i]=sum;
for(long long i=;i<=q;++i) w[i]=(Line){read(),read()};
sort(w+,w+q+);
for(long long i=;i<=q;++i){
long long x=w[i].x;
if(!vis[x]){
vis[x]=;
tot++;
}
}
long long ans=Pow(sum,m-tot);
for(long long i=;i<=q;++i){
long long d=sum;
long long j;
d-=w[i].y;
for(j=i+;w[j].x==w[j-].x;j++){
if(w[j].y==w[j-].y) continue;
d-=w[j].y;
}
d=(d%mod+mod)%mod;
ans=(ans*d)%mod;
i=j-;
}
printf("%lld",ans);
return ;
}

最新文章

  1. linux挂着U盘和光盘
  2. block数据类型
  3. VC程序查错之内存访问异常
  4. js添加创建节点和合并节点
  5. wpf:DataGrid使用
  6. [饭后算法系列] &quot;头尾移动&quot; 排序列表
  7. QQ邮箱添加公司邮箱步骤
  8. RT3070 USB WIFI 在连接socket编程过程中问题总结
  9. [SinGuLaRiTy] 复习模板-数学
  10. 分布式缓存技术redis学习系列
  11. 02-oracle中的基础sql
  12. Python汉诺塔问题
  13. ARM40-A5应用——fbset与液晶屏参数的适配【转】
  14. Qt架构图及模块分析介绍
  15. laravel二维数组手动分页显示
  16. Java日志 (zhuan)
  17. (转)C#与Outlook交互收发邮件
  18. util 常用方法
  19. code1154 能量项链
  20. OpenFire通过User Service管理用户

热门文章

  1. uvm_factory——我们的工厂(一)
  2. lwz-过去一年的总结(15-16)
  3. Windows Dos命令下查看端口号,杀死端口
  4. mac 上node.js环境的安装与测试【转】
  5. nyoj-915—— +-字符串
  6. 美可能排除中国大陆制造/生产的所有5G产品
  7. 7.逻辑运算 and or not
  8. 服务器配置iis,php网站
  9. iOS dateformatter设置GMT格式时间--iOS开发系列---项目中成长的知识四
  10. Java的BigDecimal容易出现的坑