#73: WA (line:2)


Tamilala (Tamilala)

學校 : 南女
編號 : 731
來源 : [218.164.175.74]
最後登入時間 :
2021-11-03 23:08:18
a002. 電話客服中心 -- 板橋高中教學題 | From: [172.69.135.228] | 發表日期 : 2021-05-15 22:58

#include<iostream>
using namespace std;

int first(int);

int main(){
	int n,check;
	int eng[26]={10,11,12,13,14,15,16,17,34,18,19,20,21,22,35,23,24,25,26,27,28,29,32,30,31,33};
	while(cin>>n){
		int sum=0;
		check=10-(n%10);
		n/=10;
		for(int i=1;i<=8;i++){
			sum+=((n%10)*i);
			n/=10;
		}
		for(int i=0;i<25;i++){
			if((sum+first(eng[i]))%10==check) cout<<(char)(i+65);
		}
		cout<<'\n';
	}
	
	return 0;
}

int first(int n){
	return n/10+(n%10)*9;
}

#0: 100% WA (line:2)

您的答案為: JVX
正確答案為: KLY

想請教各位大大,程式哪裡出問題了?測試執行時沒問題的......
 
#74: Re:WA (line:2)


Ching367436 (Ching367436)

學校 : 一中
編號 : 41
來源 : [140.113.68.96]
最後登入時間 :
2023-10-31 18:50:11
a002. 電話客服中心 -- 板橋高中教學題 | From: [141.101.76.84] | 發表日期 : 2021-05-19 06:31

 

#include
using namespace std;

int first(int);

int main(){
	int n,check;
	int eng[26]={10,11,12,13,14,15,16,17,34,18,19,20,21,22,35,23,24,25,26,27,28,29,32,30,31,33};
	while(cin>>n){
		int sum=0;
		check=10-(n%10);
		n/=10;
		for(int i=1;i<=8;i++){
			sum+=((n%10)*i);
			n/=10;
		}
		for(int i=0;i<25;i++){
			if((sum+first(eng[i]))%10==check) cout<<(char)(i+65);
		}
		cout<<'\n';
	}
	
	return 0;
}

int first(int n){
	return n/10+(n%10)*9;
}

#0: 100% WA (line:2)

您的答案為: JVX
正確答案為: KLY

想請教各位大大,程式哪裡出問題了?測試執行時沒問題的......




你可以看看如果身分證的檢查嗎如果是 $0$ 的時候會發生什麼事

 

這樣你的 $check$ 就會是 $10$

所以這樣那行就不會有輸出

 
#76: Re:WA (line:2)


Tamilala (Tamilala)

學校 : 南女
編號 : 731
來源 : [218.164.175.74]
最後登入時間 :
2021-11-03 23:08:18
a002. 電話客服中心 -- 板橋高中教學題 | From: [172.69.33.55] | 發表日期 : 2021-05-20 14:21

 

#include
using namespace std;

int first(int);

int main(){
	int n,check;
	int eng[26]={10,11,12,13,14,15,16,17,34,18,19,20,21,22,35,23,24,25,26,27,28,29,32,30,31,33};
	while(cin>>n){
		int sum=0;
		check=10-(n%10);
		n/=10;
		for(int i=1;i<=8;i++){
			sum+=((n%10)*i);
			n/=10;
		}
		for(int i=0;i<25;i++){
			if((sum+first(eng[i]))%10==check) cout<<(char)(i+65);
		}
		cout<<'\n';
	}
	
	return 0;
}

int first(int n){
	return n/10+(n%10)*9;
}

#0: 100% WA (line:2)

您的答案為: JVX
正確答案為: KLY

想請教各位大大,程式哪裡出問題了?測試執行時沒問題的......




你可以看看如果身分證的檢查嗎如果是 $0$ 的時候會發生什麼事

 

這樣你的 $check$ 就會是 $10$

所以這樣那行就不會有輸出


原來如此,謝謝!

 
#103: Re:WA (line:2)


eri256111@gmail.com (Eri)

學校 : 永春
編號 : 1607
來源 : [101.3.116.101]
最後登入時間 :
2022-06-15 22:34:35
a002. 電話客服中心 -- 板橋高中教學題 | From: [101.3.116.101] | 發表日期 : 2022-01-31 17:11

 

#include
using namespace std;

int first(int);

int main(){
	int n,check;
	int eng[26]={10,11,12,13,14,15,16,17,34,18,19,20,21,22,35,23,24,25,26,27,28,29,32,30,31,33};
	while(cin>>n){
		int sum=0;
		check=10-(n%10);
		n/=10;
		for(int i=1;i<=8;i++){
			sum+=((n%10)*i);
			n/=10;
		}
		for(int i=0;i<25;i++){
			if((sum+first(eng[i]))%10==check) cout<<(char)(i+65);
		}
		cout<<'\n';
	}
	
	return 0;
}

int first(int n){
	return n/10+(n%10)*9;
}

#0: 100% WA (line:2)

您的答案為: JVX
正確答案為: KLY

想請教各位大大,程式哪裡出問題了?測試執行時沒問題的......




你可以看看如果身分證的檢查嗎如果是 $0$ 的時候會發生什麼事

 

這樣你的 $check$ 就會是 $10$

所以這樣那行就不會有輸出

抱歉,我想請教一下,我也是遇到同樣的問題
我把檢查碼為 $0$ 的跳過了,但還是WA(line:2)
程式碼如下:

#include <iostream>

using namespace std;

 

const int dict[26] = {10, 11, 12, 13, 14, 15, 16,

  17, 34, 18, 19, 20, 21, 22,

  35, 23, 24, 25, 26, 27, 28, 

  29, 32, 30, 31, 33};

int main(){

ios::sync_with_stdio(false); cin.tie(0);

 

bool flag = false;

string str;

while(cin >> str){

if(flag)

cout << '\n';

flag = false;

if(str[8] != '0'){

int s = 0;

for(int i = 0 ; i < 8 ; i++){

s += (str[i] - '0') * (8 - i); 

}

for(int i = 0 ; i < 26 ; i++){

int m = (s + dict[i] / 10 + (dict[i] % 10) * 9) % 10;

if(str[8] - '0' == 10 - m){

flag = true;

cout << char(i + 'A');

}

}

}

}

return 0;

}



 
#104: Re:WA (line:2)


cges30901 (cges30901)

學校 : 不指定學校
編號 : 1455
來源 : [39.9.100.103]
最後登入時間 :
2022-04-11 21:04:24
a002. 電話客服中心 -- 板橋高中教學題 | From: [39.10.69.232] | 發表日期 : 2022-02-01 13:04

抱歉,我想請教一下,我也是遇到同樣的問題

我把檢查碼為 $0$ 的跳過了,但還是WA(line:2)
程式碼如下:


if(str[8] - '0' == 10 - m){



為什麼要跳過?因為沒有輸出才WA,你跳過了一樣還是沒有輸出啊。其實只要把上面那一行的10 - m改成(10 - m)%10就好了。

老實說我覺得這題目沒講清楚,當m是0,檢查碼c是10的時候該如何處理。

 
#105: Re:WA (line:2)


eri256111@gmail.com (Eri)

學校 : 永春
編號 : 1607
來源 : [101.3.116.101]
最後登入時間 :
2022-06-15 22:34:35
a002. 電話客服中心 -- 板橋高中教學題 | From: [101.3.116.101] | 發表日期 : 2022-02-03 00:03

抱歉,我想請教一下,我也是遇到同樣的問題

我把檢查碼為 $0$ 的跳過了,但還是WA(line:2)
程式碼如下:


if(str[8] - '0' == 10 - m){



為什麼要跳過?因為沒有輸出才WA,你跳過了一樣還是沒有輸出啊。其實只要把上面那一行的10 - m改成(10 - m)%10就好了。

老實說我覺得這題目沒講清楚,當m是0,檢查碼c是10的時候該如何處理。



oh~~ 原來是這意思,我誤會了w
感謝您的回答

 
ZeroJudge Forum