懺悔的部落格 2020普及組三校聯考 西附

2021-10-25 06:13:50 字數 4703 閱讀 5095

我懺悔,出生沒帶眼睛,看錯題了。

t1把求模數理解成了求出模之後的結果。

樣例一直沒過,卡了一小時,直到我開始檢查我的模數是不是正確的時候

才發現我題讀錯了然後腦子就反應不過來了,就直接我不知道怎麼做了。

之後讀t2的時候,以為是乙個普通的字串問題做少了,就直接開始寫

結果錯了。。。。t3大模擬碰到就廢打了一半,時間到了。。。

懺悔啊,沒臉啊!!!

好了,懺悔過了,之後該反省了。(先來題解)

正常讀了題就應該知道,這是個找規律。

當k =0

k = 0

k=0時,

如果查詢的是乙個質數就直接輸出2

22,否則就輸出除一之外最小的因數

當k =1

k = 1

k=1時,

就輸出x/2

x / 2

x/2向下取整 +++1

11。

#include

#include

#include

using

namespace std;

bool flag;

intmain()

if(flag)

else

}else

if(k ==1)

}}return0;

}

啊啊啊啊啊啊~怎麼會看錯題啊!!!!

這個關鍵就是在於四種操作中的其中任意一種

操作之後就是要存一下答案,之後再輸出。

那四種操作,就是按題面上的寫就行了。。。

我神秘打爆。。不知道為什麼。。。

還有最開始不是已經說了省略行末空格和回車嗎,那為什麼還會有

行末不許有多餘空格啊???

#include

#include

#include

using

namespace std;

const

int range =

1e5+5;

char s[15]

;int op[range]

;int

main()

else

if(s[1]

=='u')}

else

if(s[0]

=='b'

) op[i]

= cnt;

}for

(int i =

1; i <= n; i++

)return0;

}

又是一道題目都一樣的模擬,好像在**做過,但是因為沒有太多時間

寫了一部分就交上去了。然後因為有乙個沒打句號,然後(懂的都懂)

然後在oj上測了之後只有60pt

s60pts

60pt

s,然後我又發現,我**題又沒讀完整

結果要特判一下當手牌非14的時候直接跳出迴圈。。我。。真的很無語。

之後就按照題目要求來打。

乙個建議:

以後碰到這種題目講了很多東西,把沒關係的和有關係的混在一起的時候,可以把你覺得

有用處的地方勾畫一下,打個標註,這樣就不會漏條件,前提是你得讀完題,且讀懂了題

60pts

#include

#include

#include

using

namespace std;

const

int range =15;

char s[5]

;int num[range]

[range]

;void

init()

}}intmain()

else

if(s[0]

=='s'

)else

if(s[0]

=='w'

)else

if(s[0]

=='n'

)else

if(s[0]

=='b'

)else

if(s[0]

=='f'

)else

if(s[0]

=='z'

)else

if(s[0]

>=

'1'&& s[0]

<=

'9')

else

if(s[1]

=='p'

)else

if(s[1]

=='m')}

}if(num[1]

[1]>=

1&& num[2]

[1]>=

1&& num[3]

[1]>=

1&& num[1]

[9]>=

1&& num[2]

[9]>=

1&& num[3]

[9]>=

1&& e >=

1&& s >=

1&& w >=

1&& n >=

1&& b >=

1&& f >=

1&& z >=1)

int cnt =0;

if(e ==2)

if(s ==2)

if(w ==2)

if(n ==2)

if(b ==2)

if(f ==2)

if(z ==2)

for(

int i =

1; i <=

3; i++)}

}if(cnt ==7)

bool flag =

false

;for

(int i =

1; i <=

3; i++)}

if(flag)

else

}return0;

}

code

#include

#include

#include

using

namespace std;

const

int range =15;

char s[5]

;int num[range]

[range]

;int cnt =

0, t;

void

init()

}}intmain()

else

if(s[0]

=='s'

)else

if(s[0]

=='w'

)else

if(s[0]

=='n'

)else

if(s[0]

=='b'

)else

if(s[0]

=='f'

)else

if(s[0]

=='z'

)else

if(s[0]

>=

'1'&& s[0]

<=

'9')

else

if(s[1]

=='p'

)else

if(s[1]

=='m')}

}if(num[1]

[1]>=

1&& num[2]

[1]>=

1&& num[3]

[1]>=

1&& num[1]

[9]>=

1&& num[2]

[9]>=

1&& num[3]

[9]>=

1&& e >=

1&& s >=

1&& w >=

1&& n >=

1&& b >=

1&& f >=

1&& z >=1)

cnt =0;

if(e ==2)

if(s ==2)

if(w ==2)

if(n ==2)

if(b ==2)

if(f ==2)

if(z ==2)

for(

int i =

1; i <=

3; i++)}

}if(cnt ==7)

bool flag =

false

;for

(int i =

1; i <=

3; i++)if

(num[i][1

]>=

3&& num[i][9

]>=

3&& num[i][2

]>=

1&& num[i][3

]>=

1&& num[i][4

]>=

1&& num[i][5

]>=

1&& num[i][6

]>=

1&& num[i][7

]>=

1&& num[i][8

]>=1)

}if(flag)

else

}return0;

}

從兩次做這種模擬題來看,考麻將,撲克,三國殺,大富翁等桌遊的機率還是很大呀,我們也應該去多熟悉一下

咕咕咕

ccf線上賽普及組 2020

a.文具訂購order 思路 首先,要花光所有的q,發現除了n 1,2,5以外都能被花光。觀察條件得知我們要盡可能的配套,盡可能多的14元。找完所有的14之後在將剩餘的盡可能分為3,4,這樣總數就更多滿足條件。1 include 2 include 3 include 4 using namespa...

2020CSP J普及組複賽(民間資料)題解

這一道題就是一道簽到題 這道題我們可以很快速的發現,若n為奇數 即n 2 1 則n必定無法拆分 若n為偶數,其實就只需要有以下操作 1.先通過計算2的k次冪,找到第乙個滿足大於等於n的值 2.計算當n k 0時,輸出k,隨後將k k 2 最後當n等於0,則輸出即為其優秀拆分 還可以直接把2的次冪打出...

CSP J2020普及組複賽T1 優秀的拆分

一般來說,乙個正整數可以拆分成若干個正整數的和 例如,1 1 1 11 1,10 1 2 3 4 10 1 2 3 4 10 1 2 3 4 等。對於正整數 n nn 的一種特定拆分,我們稱它為 優秀的 當且僅當在這種拆分下,nnnn nn被分解為了若干個不同的 2 22 的正整數次冪。注意,乙個數...