问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

一道acm题目

发布网友 发布时间:2022-04-26 18:26

我来回答

2个回答

热心网友 时间:2023-10-20 22:58

你的程序肯定存在的问题是题目要求的是如果大于11519,才输出它除以11519的余数。所以结果有可能是11519!而模操作是不行的。
当然题目描述还是有问题,因为最后的结果也不是按上面说的那种做法(题目的实际描述),而是只要用来统计的那个变量一大于11519就令它减去11519,这个差别会使得总结果为11519*n (n>1)时最后的输出不一样(前者为0,后者为11519)。

我实在是不怎么看得懂你的程序的思路(贴代码的时候最好写上思路或注释),但明显是走了弯路,直接排序很快就可以得到结果。
以下是我AC的代码,在Status的运行速度排第三。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char list[49999][30];
/*
int和long (int)的取值范围是一样的
*/
int cmp( const void* a, const void* b )
{
return strcmp( (char*)a, (char*)b );
}
// 判断是不是前缀
bool prefix( char* a, char* b )
{
for ( int t = 0; a[t]; t++ )
if ( a[t] != b[t] )
return 0;
return 1;
}
int main()
{
int test, n, ans, i, j;
scanf( "%d", &test );
while ( test-- )
{
scanf( "%d", &n );
for ( i = 0; i < n; i++ )
scanf( "%s", &list[i] );
qsort( list, n, sizeof( char ) * 30, cmp ); // 字符串快排
ans = 0;
// 对于每个字符串,遍历它之后的元素如果符合前缀则计数,不符合则再往后的字符串都不会符合
for ( i = 0; i < n - 1; i++ )
for ( j = i + 1; j < n; j++ )
if ( prefix( list[i], list[j] ) )
ans++;
else
break;

// 题目的描述有问题
while ( ans > 11519 )
ans -= 11519;
printf( "%d\n", ans );
}
return 0;
}

C语言不支持bool类型,把prefix的返回类型改成int就可以用C提交了。

学习ACM最好是到PKU、ZJU等OJ上,因为网上会有题目分类,便于你找到合适的题型。顺便说下HUST的OJ不能查看自己提交过的代码真的很不习惯……

希望会对你有所帮助!~
BY: http://acm.tju.e.cn/toj/user_swy.html

热心网友 时间:2023-10-20 22:58

字典树
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何通过故事和绘画激发孩子的想象力? 怎么提高孩子在绘画方面的想象力? 哪个牌子的素描纸最好用 1 60g的素描纸等于多少A? 一条高速公路的路基长100千米宽50米这条公路路基占地面积大约多少公顷合... 选择四川大学的原因是什么? 成都哪个学校留学生多 如何验证IPVS是否安装正常 杭州市十三中和杭外初中是考试进入的还是划片进入的?如果是划片需要户口... 怎么关闭余额宝?具体操作步骤是什么? “茶壶”的拼音是什么 . 一个在acm中不懂的翻译,求高手解释下 ~~~ P=UI ACM题目:处理Microsoft Word某行字符串 关于水壶的说明文,600字,马上要,谢谢哦,是倒水的那种水壶 问一道acm的题,Fold。帮忙翻译一下就好(不要在线翻译的,看不懂),要是有代码就万分感谢了~ “茶壶”的拼音 谁帮我翻译下ACM题目 水壶拼音 帮忙翻译一道ACM的题目 水壶“拼音怎写? 谁能帮我翻译并解答Speed Limit这道ACM题啊! acm.timus.ru[ural] 翻译 水壶的拼音是什么 谁有文件格式的后缀名翻译? 水壶的拼音 64位操作系统、64位CPU中的64主要是指什么? 北大ACM题目谁翻译了啊? http://poj.org/ 电水壶全拼音这么写 杭电acm2053题目翻译(不要把代码发上来)。 壶的繁体字是什么? 一锅热粥一个壶是什么成语 一张图上有一道闪电和一个壶是哪个成语呢??? 电烧水壶内胆GB48069食品级304 和食品级不锈钢304两者哪个好?哪个更安全更健康 ? 产的拼音 有关茶道 水壶烧出来的开水有茶锈怎么处理 塞上壶塞的拼音 什么叫移动终端登录? 手机qq安全中心发来一条信息说移动终端登录是什么意思? 蜂窝移动终端的登录?(通信系统概括) 学校发的平板突然显示要求登录移动终端管理系统怎么回事 中国移动的LTE无线终端无线猫怎么登陆设置界面,账户和密码 如何禁止QQ在移动终端登录 国家统计局移动终端管理平台怎么登陆 你好,登录中国移动终端管理系统,调拨串号,被终止了,该怎么解决 中国移动crm系统登录怎么登陆? 人教版数学必修五基本不等式的讲解 关于基本不等式的讲解(一) e-mobile登录不上去,肿么办