PAT 1058. 选择题(20) C++

论坛 期权论坛 脚本     
匿名技术用户   2020-12-28 06:52   11   0
#include <iostream>
#include <stdio.h>
#include <string>
#include <string.h>
using namespace std;

int main()
{
        int N,M;
  cin>>N>>M;
  getchar();
  int score[M];
  int Cnum[4];
  int Tnum[4];
  char answer[1000];
  string str1[M];
  for(int i=0;i<M;i++) {
             char answer[1000]={""};
   cin>>score[i]>>Cnum[i]>>Tnum[i];
   for(int j=0;j<Tnum[i];j++) {
                  cin>>answer[j];
   }
   str1[i] = answer;
   //cout<<str1[M-1]<<" ";

  }

  //for(int i=0;i<M;i++){
      //      cout<<str1[i]<<" ";
 // }

  int choose;
  char ans[1000];
  string str2[M];
  int sum[1000]={0};
  int num[1000]={0};

  //for(int i=0;i<M;i++){
      //    cout<<score[i]<<endl;
  //}


  for(int i=0;i<N;i++) {
                 scanf("\n"); //格式部分
  for(int k=0;k<M;k++) {
                if(k != 0) scanf(" ");
                char ans[1000]={""};
                scanf("(%d", &choose);
    //cin>>choose;
    for(int j=0;j<choose;j++) {
     cin>>ans[j];
    }
    scanf(")");
    str2[k] = ans;

    //cout<<str2[k]<<" ";
    //cout<<str1[k]<<endl<<str2[k]<<endl;

    if(str1[k]==str2[k]) {
     sum[i]=sum[i]+score[k];
     }else {
      num[k]++;
     }
     //cout<<sum[i]<<endl;
   }
  }
  for(int i=0;i<N;i++) {
   cout<<sum[i]<<endl;
  }
  int tig=0,max=0;
  for(int i=0;i<M;i++) {
   tig+=num[i];
  }
  if(tig==0) {
   cout<<"Too simple";
  }else {
   for(int j=0;j<M;j++) {
    if(num[j]>max)
                {
                    max=num[j];
                }
   }
   cout<<max;
   for(int z=0;z<M;z++) {
    if(max==num

PAT 1058. 选择题(20) C++

#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;string&gt;
#include &lt;string.h&gt;
using namespace std;
int main()
{
int N,M;
cin&gt;&gt;N&gt;&gt;M;
getchar();
int score[M];
int Cnum[4];
int Tnum[4];
char answer[1000];
string str1[M];
...查看全文
匿名技术用户 发表于 2020-12-28 06:52 
) { cout<<" "<<z+1; } } } return 0; }

输入()格式部分改了好多次,还有段错误。

下面是没有写格式的java代码。真心写不下去,格式太难整了qaq。

import java.util.Scanner;
public class Main {
 public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  int N = sc.nextInt();
  int M = sc.nextInt();
  int[] score = new int[M];
  int[] Cnum = new int[4];
  int[] Tnum = new int[4];
  String[] answer = new String[4];
  String[] str1 = new String[M];
  for(int i=0;i<M;i++) {
   score[i] = sc.nextInt();
   Cnum[i] = sc.nextInt();
   Tnum[i] = sc.nextInt();
   for(int j=0;j<Tnum[i];j++) {
    answer[j] = sc.next();
   }
   for(int z=0;z<Tnum[i];z++) {
    str1[i] = str1[i]+answer

PAT 1058. 选择题(20) C++

#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;string&gt;
#include &lt;string.h&gt;
using namespace std;
int main()
{
int N,M;
cin&gt;&gt;N&gt;&gt;M;
getchar();
int score[M];
int Cnum[4];
int Tnum[4];
char answer[1000];
string str1[M];
...查看全文
匿名技术用户 发表于 2020-12-28 06:52 
; } } //for(int i=0;i<M;i++) { //System.out.print(score[i]+" "); // System.out.print(str1[i]+" "); // System.out.println(); //}// int choose; String[] ans = new String[4]; String[] str2 = new String[M]; String[] ch = new String[M]; int[] sum=new int[M]; int[] num=new int[M]; for(int i=0;i<N;i++) { for(int k=0;k<M;k++) { //char left = System.in.read(); //char getChar = sc.nextLine().charAt(0); // for(int q=0;q<1;q++) { // char c = sc.next().charAt(0); // } choose = sc.nextInt(); for(int j=0;j<choose;j++) { ans[j] = sc.next(); } for(int z=0;z<choose;z++) { str2[k] = str2[k]+ans

PAT 1058. 选择题(20) C++

#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;string&gt;
#include &lt;string.h&gt;
using namespace std;
int main()
{
int N,M;
cin&gt;&gt;N&gt;&gt;M;
getchar();
int score[M];
int Cnum[4];
int Tnum[4];
char answer[1000];
string str1[M];
...查看全文
匿名技术用户 发表于 2020-12-28 06:52 
; } if(str1[k].equals(str2[k])) { sum[i]=sum[i]+score[k]; }else { num[k]++; } //char right = sc.next().charAt(0); //char getChar2 = sc.nextLine().charAt(0); // for(int q=0;q<1;q++) { // char c = sc.next().charAt(0); // } } //for(int a=0;a<M;a++) { // System.out.print(str2[a]+" "); // }// //for(int d=0;d<M;d++) { //System.out.println("str1: "+str1[d]+" "+"str2: "+str2[d]); //} for(int d=0;d<M;d++) { str2[d]=null; } } for(int i=0;i<N;i++) { System.out.println(sum[i]); } int tig=0,temp; for(int i=0;i<M;i++) { tig+=num[i]; } if(tig==0) { System.out.print("Too simple"); }else { for(int j=0;j<M;j++) { for(int k=j+1;k<M;k++) { if(num[j]>num[k]) { temp=num[k]; num[k]=num[j]; num[j]=temp; } } } System.out.print(num[M-1]+" "); for(int z=0;z<M;z++) { if(num[M-1]==num

PAT 1058. 选择题(20) C++

#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;string&gt;
#include &lt;string.h&gt;
using namespace std;
int main()
{
int N,M;
cin&gt;&gt;N&gt;&gt;M;
getchar();
int score[M];
int Cnum[4];
int Tnum[4];
char answer[1000];
string str1[M];
...查看全文
匿名技术用户 发表于 2020-12-28 06:52 
) { System.out.print((z+1)+" "); } } } sc.close(); } }


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP