NC200493. We are singers
描述
输入描述
第一行输入一个整数N();
第二行包含N个数字构成的简谱,数字间用空格隔开;
第三行包含N个读音,读音间用空格隔开.
输出描述
总共唱错的读音个数.
示例1
输入:
8 1 2 3 4 5 6 7 1 do re mi fa sol la si der
输出:
1
说明:
仅最后一个读音唱错.C(clang 3.9) 解法, 执行用时: 3ms, 内存消耗: 376K, 提交时间: 2019-12-28 14:26:51
#include<stdio.h> #include<string.h> int main() { char d[7][10]={"do","re","mi","fa","sol","la","si"},y[10]; int n[10000]={0},num=0,i,m; scanf("%d",&m); for(i=0;i<m;i++) scanf("%d",&n[i]); for(i=0;i<m;i++) { scanf("%s",y); if(strcmp(d[n[i]-1],y)) num++; } printf("%d",num); return 0; }
C++11(clang++ 3.9) 解法, 执行用时: 8ms, 内存消耗: 392K, 提交时间: 2020-02-25 12:14:06
#include<bits/stdc++.h> using namespace std; int main() { char q[7][5]={"do","re","mi","fa","sol","la","si"}; int i,j,n,cnt=0; char p[20]; cin>>n; int x[n]; for(i=0;i<n;i++) cin>>x[i]; for(i=0;i<n;i++) { cin>>p; if(strcmp(q[x[i]-1],p)!=0) cnt++; } cout<<cnt<<endl; return 0; }
C++14(g++5.4) 解法, 执行用时: 6ms, 内存消耗: 748K, 提交时间: 2019-12-28 14:32:29
#include<bits/stdc++.h> using namespace std; int main(){ int n,x=0; string a[10005]; int b[10005]; cin>>n; string c[7]={"do","re","mi","fa","sol","la","si"}; for(int i=0;i<n;i++)cin>>b[i]; for(int i=0;i<n;i++){ cin>>a[i]; if(a[i]!=c[b[i]-1])x++; } cout<<x<<endl; }