惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
罗磊的独立博客
宝玉的分享
宝玉的分享
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
V
V2EX
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
博客园_首页
量子位
月光博客
月光博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 司徒正美
人人都是产品经理
人人都是产品经理
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
爱范儿
爱范儿
S
SegmentFault 最新的问题
雷峰网
雷峰网
小众软件
小众软件
博客园 - 聂微东
美团技术团队
Apple Machine Learning Research
Apple Machine Learning Research
WordPress大学
WordPress大学
Jina AI
Jina AI
Hugging Face - Blog
Hugging Face - Blog

博客园 - zy_nic

SRM 424 div1 900 ProductOfPrices 翻译 .. emacs的c++mode contest contest 我的2-sat模板 Solution to GCJ Practice Contest Problem C, Cycles 约瑟夫问题的数学方法 我的模板 图的应用 pku3411 今天的比赛 关于建图的 死老鼠安装成功 pku3141 先帖个题目上来 hnu 11015 joj 儿死三八 pku 1273
hnu 11028
zy_nic · 2007-09-17 · via 博客园 - zy_nic

那天比赛的, x %y  当 x%y<0的时候  (而不是x<0的时候) 应该取  y+x%y;

#include <stdio.h>


#include 
<string.h>


int tx[2000],ty[2000];
int f[2000][2000];

int main()
{
    
int t,i,j,ans,x,y,d,n;
    scanf(
"%d",&t);
    
while (t--)
    
{
          memset(f,
0,sizeof(f));
          memset(tx,
0,sizeof(tx));
          memset(ty,
0,sizeof(ty));
          
          scanf(
"%d%d",&d,&n);
          
for (i=0;i<n;i++)
          
{
              scanf(
"%d%d",&x,&y);
              tx[ x 
% d >= 0 ? x % d : d+% d ]++;
              ty[ y 
% d >= 0 ? y % d : d+% d ]++;
              f[ x 
% d >= 0 ? x % d : d+% d ][ y % d >= 0 ? y % d : d+% d ]++;
          }

          
          ans
=n;
          
for (i=0;i<d;i++)
            
for (j=0;j<d;j++)
              
if (tx[i]+ty[j]-f[i][j]<ans) { ans=tx[i]+ty[j]-f[i][j];}
              
          printf(
"%d\n",ans);
    }

    
return 0;
}