qwerthzrv 发表于 2021-2-21 14:57

求助NOIp2005 第一题

本帖最后由 qwerthzrv 于 2021-2-21 17:36 编辑

大佬们帮忙看一下程序

在本机上运行样例成功,提交到网上(https://vijos.org/p/1001 )就没通过。。。

还有为啥我要定义结构类型`struct data`时,debugger时会弹出vs code会弹出无法打开cygwin.S。。

```c
#include <stdio.h>

struct data {
    char name; //name
    int aver; //average
    int evo; //review of class
    char lead; //is cadres or not
    char west; //is west or not
    int paper; //number of paper
    int bonds; //bonds
};

int main(int argc,const char *argv[])
{   
    int total;
    int sum,idx = 0;
    scanf("%d", &total);
    struct data m;
    for (int i = 0; i < total;i++){
      scanf("%s %d %d %c %c %d",m.name,&m.aver, &m.evo, &m.lead,&m.west, &m.paper);
      m.bonds = 0;
      if(m.aver > 80 && m.paper > 0) m.bonds +=8000;
      if(m.aver > 85 && m.evo > 80) m.bonds += 4000;
      if(m.aver > 90) m.bonds += 2000;
      if(m.aver > 85 && m.west == 'Y') m.bonds += 1000;
      if(m.evo > 80 && m.lead == 'Y') m.bonds += 850;
      
      sum += m.bonds;
      if(m.bonds > m.bonds) idx = i;
      
    }
    printf("%s\n%d\n%d\n",m.name,m.bonds,sum);
    return 0;
}
```

Ldfd 发表于 2021-2-21 15:21

因为你WA了,样例都没通过

qwerthzrv 发表于 2021-2-21 15:28

Ldfd 发表于 2021-2-21 15:21
因为你WA了,样例都没通过

我在我的电脑上运行时样例是通过的

Ldfd 发表于 2021-2-21 15:33

qwerthzrv 发表于 2021-2-21 15:28
我在我的电脑上运行时样例是通过的

单纯就是写错了https://pic.rmb.bdstatic.com/bjh/2c6d82224c150117d481711d95f0f4b5.png

ljlVink 发表于 2021-2-21 16:02

qwerthzrv 发表于 2021-2-21 15:28
我在我的电脑上运行时样例是通过的

上洛谷问,52上搞oi的不多
题解:
https://www.luogu.com.cn/problem/solution/P1051
最好了解下acm/oi的评分原理
c++编译最好用命令
g++ a.cpp -o a.exe

ljlVink 发表于 2021-2-21 16:07

#include<bits/stdc++.h>
using namespace std;
int n;
struct student{
    string name;
    int qimo;
    int banji;
    char ganbu;
    char xibu;
    int lunwen;
    int money;
}a;
int sum=0;
bool cmp(student a,student b){
    return a.money<b.money;
}
int main(){
    cin>>n;
    for(int i=1;i<=n;i++)
    {
      cin>>a.name>>a.qimo>>a.banji>>a.ganbu>>a.xibu>>a.lunwen;
    }
    //sort(a+1,a+n+1);
    for(int i=1;i<=n;i++){
      if(a.qimo>80&&a.lunwen>=1){
            a.money+=8000;
            sum+=8000;
      }
      if(a.qimo>85&&a.banji>80){
            a.money+=4000;
            sum+=4000;
      }
      if(a.qimo>90){
            a.money+=2000;
            sum+=2000;
      }
      if(a.qimo>85&&a.xibu=='Y'){
            a.money+=1000;
            sum+=1000;
      }
      if(a.banji>80&&a.ganbu=='Y'){
            a.money+=850;
            sum+=850;
      }
    }
    sort(a+1,a+1+n,cmp);
    cout<<a.name<<endl<<a.money<<endl<<sum<<endl;
    return 0;
}

ljlVink 发表于 2021-2-21 16:12

目测你的没啥问题啊

qwerthzrv 发表于 2021-2-21 17:35

ljlVink 发表于 2021-2-21 16:12
目测你的没啥问题啊

我也是这么感觉的,,

huanghunqiji 发表于 2021-4-29 17:16

感谢分享
页: [1]
查看完整版本: 求助NOIp2005 第一题