player300 @ 2023-08-15 15:17:33
#include <bits/stdc++.h>
using namespace std;
int main() {
long long x;
char a, b;
long long q;
cin >> x;
cin >> a >> b;
q = (long long)a + (long long)b;
if (q == 131 || (q == 132 && (long long)a == (long long)b)) {
printf("%lld", x * 8 / 10);
} else if ((q == 132 && (long long)a != (long long)b) || q == 134) {
printf("%lld", x * 7 / 10);
} else if (q == 133) {
printf("%lld", x * 6 / 10);
}
return 0;
}
by Pink_Cut_Tree @ 2023-08-15 15:23:18
@player300 不是,是第几行输出数据太少了
by player300 @ 2023-08-15 15:58:04
@Present_Coming_Time answer too short on line 1. 是说第一行吗?我不确定。
by player300 @ 2023-08-15 15:58:55
@Present_Coming_Time 测试点四那里出的问题。
by Pink_Cut_Tree @ 2023-08-15 16:00:35
@player300 啊对,第一行输出的数据太少了
by player300 @ 2023-08-15 16:01:11
@Present_Coming_Time 还有的话可以帮我看一下我这个逻辑有没有问题,万分感谢。
by player300 @ 2023-08-15 16:01:55
@Present_Coming_Time 那应该怎么修改呢?
by Pink_Cut_Tree @ 2023-08-15 16:06:50
@player300 没太看懂您的代码,建议不要将 char
类型的字符转换为 int
书写
by player300 @ 2023-08-15 16:08:56
@Present_Coming_Time 我的代码呢就是将A,B,C转化为ascil码来输入判断,然后根据ascil码总和的不同直接看打多少折。
by player300 @ 2023-08-15 16:09:52
@Present_Coming_Time 主要是我现在也不会其他太多的语言跟函数我现在只是刚入门起手而已,练习来的。
by player300 @ 2023-08-15 16:11:04
@Present_Coming_Time 因为他有可能点相同的菜,所以呢我还在那个if判断里面加上了两个Access码转化出来如果相同跟不同,就是132那个情况。