• HUST-OJ运用经验


    感谢 

    HUST-OJ开源易用,容易安装。使用稳定可靠,对于专业和非专业人员都课发挥很好的作用。

    本经验提供一种简单的方法,实现 类似于leetcode的代码测试方式。这个方法能限定用户的基本数据结构。而又不需要进行二次开发。适合普通管理人员使用。

    以实现leetcode 的1991找到数组的中间位置为例说明如下。

    1、前期准备,将/home/judge/data/1000目录授权 +777

    2、添加问题。

    3、完整的例程

    1. #include <stdio.h>
    2. int pivotIndex(int* nums, int numsSize);
    3. int arr[10000]={0};
    4. int main(){
    5. int n,i,r;
    6. scanf("%d",&n);
    7. for(i=0;i<n;i++) scanf("%d",&arr[i]);
    8. r=pivotIndex(arr,n);
    9. printf("%d",r);
    10. return 0;
    11. }
    12. int pivotIndex(int* nums, int numsSize){
    13. int l = 0;
    14. int r = 0;
    15. int i;
    16. for(i=0; i<numsSize; i++) r+=nums[i];
    17. for(i=0; i<numsSize; i++){
    18. if (i!=0) l += nums[i-1];
    19. r -= nums[i];
    20. if (l == r ) return i;
    21. }
    22. return -1;
    23. }

    3、将除了函数之外的内容作为1000题目的测试数据提交(文件名自己规定,扩展名不能是in和out。例如 T.c)如下 T1839.c

    1. #include <stdio.h>
    2. int pivotIndex(int* nums, int numsSize);
    3. int arr[10000]={0};
    4. int main(){
    5. int n,i,r;
    6. scanf("%d",&n);
    7. for(i=0;i<n;i++) scanf("%d",&arr[i]);
    8. r=pivotIndex(arr,n);
    9. printf("%d",r);
    10. return 0;
    11. }
    12. int pivotIndex(int* nums, int numsSize){
    13. int l = 0;
    14. int r = 0;
    15. int i;
    16. for(i=0; i<numsSize; i++) r+=nums[i];
    17. for(i=0; i<numsSize; i++){
    18. if (i!=0) l += nums[i-1];
    19. r -= nums[i];
    20. if (l == r ) return i;
    21. }
    22. return -1;
    23. }

    在提示中提供函数提示,如下

    1. 提交函数形式如下
    2. #include "/home/judge/data/1000/T1328.c
    3. int pivotIndex(int* nums, int numsSize){
    4. /* 你的代码位置 */
    5. }

    完成的题目如下

  • 相关阅读:
    MySQL关于Count你知道多少
    线程的概念与使用
    Mysql 官方提供的公共测试数据集 Example Databases
    题目0157-密室逃生游戏
    C++多态详细解析+代码演示
    Excel如何进行隔行复制粘贴
    微信小程序 prettier 格式化
    C++--模板
    如何判断灭蝇灯内的粘蝇板是否已经沾满苍蝇并需要更换
    用HTML、CSS和JS打造绚丽的雪花飘落效果
  • 原文地址:https://blog.csdn.net/asdcsj/article/details/133063404